- 赋值运算不返回值
if a = b
是非法的
let a = b += 2
同样是非法的
不同于 OC,赋值运算不再返回值,区别于(==) - 元组
同时定义变量x
和变量y
let (x,y) = (1,2)
使用附属脚本访问元组元素
let xyz = (1,2,3) print(xyz.0,xyz.1,xyz.2)
使用自定义前缀
let xyz = (x:1,y:2,z:3) print(xyz.x,xyz.y,xyz.z)
- 字符串使用“+”连接
"hello " + "world"
- 使用“==”比较字符串
if name == "world"
- 恒等于和非恒等于
===
和!==
比较两对象是否为同一对象实例 - 关于元组的比较
(1 , "apple") < (2 , "zebra")
第一个元素相比小于和大于直接返回结果,相等的时候再比较第二个元素 - 大于小于不允许比较Bool类型
//("blue", false) < ("purple", true) // Error because < can't compare Boolean values
- a ?? b
a != nil ? a! : b
的简写 - 初始化nil变量
var userDefinedColorName : String?
- 使用“??”判断对象是否为nil,如果为nil使用默认值
colorNameToUse = userDefinedColorName ?? defaultColorName
- 使用“...”遍历,包括两端
for index in 1...5
- 使用“..<”遍历,不包括右端
for i in 0..<count
通常用来遍历数组 - 使用“...”及“..<”作为一目运算符从某值遍历到结尾,swift4.0中新特性
for name in names[2...]
for name in names[...2]
for name in names[..<2]
let range = ...5 //小于等于5
- 逻辑运算与oc保持一致顺序由左至右,使用括号保持可读性
Basic Operators
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- //Clojure入门教程: Clojure – Functional Programming for the J...