文档章节

Swift学习—运算符

TomatosX
 TomatosX
发布于 2015/05/19 18:10
字数 555
阅读 62
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

知识点:

  1. Swift范围运算符:..< {表示[x, y), 即大于等于x,小于y} , ... {表示[x, y], 即大于等于x,小于等于y} (主要用于for循环中)
  2. Swift溢出运算符(注意:是为整型计算提供的):&+, &-, &*, &/, &%
  3. Swift支持N对N赋值
  4. Swift赋值是没有返回值的
  5. %在Swift中叫“求余运算符”,求余结果的正负跟%左边数值的正负一样
  6. Swift的%还支持浮点的计算
  7. Bool类型类似于java中的boolean,只有两种取值true和false
  8. 在C中非零即为真,而Swift中没有这个概念
  9. if中的条件必须为Bool类型
示例代码:

//: Playground - noun: a place where people can play

import UIKit

// Swift中新增加的运算符
// 范围运算符
// ..< {表示[x, y), 即大于等于x,小于y} , ... {表示[x, y], 即大于等于x,小于等于y} (主要用于for循环中)

// 溢出运算符
// &+, &-, &*, &/, &%


// 1、Swift支持N对N赋值
let (x, y) = (1, 2)  // 即x被赋值为1,y被赋值为2,并且均为常量


// 2、Swift赋值是没有返回值的
// 下面的代码是错误的,因为x = y并没有返回相应的值
// if (x = y) {}


// 3、%在Swift中叫“求余运算符”
9 % 4    // 1
-9 % 4   // -1
9 % -4   // 1
-9 % -4  // -1
// 求余结果的正负跟%左边数值的正负一样

// Swift的%还支持浮点数的计算
8 % 2.5  // 0.5


// 4、Bool类型类似于java中的boolean类型,只有两种取值true和false
// 在C中非零即为真,而在Swift中没有这种概念
// if中的条件必须是Bool类型的值
// 下面的写法错误
// if (1){}
// 下面的写法正确
if (true) {
    println("条件成立")
}


// 5、范围运算符,..<和...
for i in 0..<5 {
    println(i)
} // 输出结果 0到4

for i in 0...5 {
    println(i)
} // 输出结果 0到5


// 6、Swift为整型计算提供了5个&开头的溢出运算符,能对超出取值范围的数值进行灵活处理
// 注意:这里是为整型计算提供的
let n = UInt8.max
let m = n &+ 1

let n1 = UInt8.min
let m1 = n1 &- 1


© 著作权归作者所有

TomatosX
粉丝 23
博文 207
码字总数 119547
作品 0
成都
iOS工程师
私信 提问
Swift专题讲解二十三——高级运算符

Swift专题讲解二十三——高级运算符 一、引言 除了前边博客中介绍的基本运算符外,Swift中还支持更多高级运算符,也支持开发者进行运算符的自定义。Swift中的算符运算符有一个特点,其不会产...

珲少
2016/05/31
1K
1
Swift3.0带来的变化汇总系列一——字符串与基本运算符中的变化

Swift3.0带来的变化汇总系列一——字符串与基本运算符中的变化 一、引言 Apple与今年6月13日正式发布了Swift3.0的第一个预览版本,并且相应推出了Xcode8的第一个bate版本。开发者已经可以在X...

珲少
2016/06/16
3.1K
0
Swift解读专题三——基础运算符

Swift解读专题三——基础运算符 一、引言 运算符是编程语言不可缺少的一个部分,Swift中除了支持C中的运算符外,还提供了一些更加强大的运算符功能,例如取余符%可以用来计算浮点数,另外新增...

珲少
2016/05/09
261
0
Swift - 运算符

运算符是一中算数逻辑运算符号,用于告诉编译器执行一个数学或逻辑运算。 Swift 提供了以下几种运算符: 算术运算符 比较运算符 逻辑运算符 位运算符 赋值运算符 区间运算符 其他运算符 本章...

Albert_Lee
2017/11/16
0
0
关东升的《《从零开始学Swift》即将出版

大家好: 苹果2015WWDC大会发布了Swift2.0,它较之前的版本Swift1.x有很大的变化,所以我即将出版《从零开始学Swift》《从零开始学Swift》将在《Swift开发指南》第1版的基础上添加Swift2.0的...

智捷课堂
2015/08/17
111
0

没有更多内容

加载失败,请刷新页面

加载更多

oracle查杀连接会话

由于频繁强制启停tomcat不清理连接等情况时可能导致oracle连接爆满,此时可以使用这个方式清理 --查询select sess.sid,sess.serial#,sess.machine,lo.oracle_username,lo.os_user_name,...

孑竹三秋
27分钟前
5
0
为什么互联网公司天天都在招人?

互联网公司招聘是很重要的环节,互联网公司离职率普遍较高,传统企业离职率较低,所以对于公司招聘是很重要的环节,同样一句“很重要”我看到许多人理解其程度实际上大相径庭。在很多互联网公...

码农突围
27分钟前
5
0
001-open-falcon的单机版安装

open-falcon 每台服务器,都有安装falcon-agent,falcon-agent是一个golang开发的daemon程序,用于自发现的采集单机的各种数据和指标 单机安装 redis mkdir /home/redis && cd /home/redis...

伟大源于勇敢的开始
29分钟前
3
0
人工智能领跑的未来,智能CRM未来可期

现在,几乎每个技术预测故事都以同样的方式开始:人工智能AI正在开辟新的可能性。这种趋势同样发生在CRM领域中。 人工智能正在通过访问和分析来改变CRM。它正在通过添加语音助手、同时改善工...

怡海软件-CRM
31分钟前
4
0
mysql-5.7.28-linux-glibc2.12-x86_64配置(参考)

[client]socket                                            = /data/mysql/var/mysql.sockport                                         ...

Wybaron
34分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部