nil合并运算符
在Swift中引入一种新的运算符nil合并运算符:??,它的格式如下:
let c = a??b
它的含义如下:判断可选变量a是否为nil,如果a不为nil,c就等于a所包装的真实值,如果a为nil,则程序会返回b的值。
注意这里有两个必须条件:
1. a必须是可选类型的。
2. b的类型必须要和a的强制解析后的类型一致。
其实上边的代码还可以转换成C语言的三目运算:
let c = a != nil ? a! : b
范围运算符
SWift不仅引入了nil合并运算符,更是引入了两个新的范围运算符
闭范围运算符
半开范围运算符
闭范围运算符a…b是这样定义的,它表示的范围是a到b所包含的所有值(包括a、b边界值)。注意a不能大于b,这样会报错的。
let number=2...8
for num in number
{
print(num)
}
半开范围运算符是表示a到b所包含的所有值(包括a的值,但不包括b的值),这里依旧注意a不能大于b。
a..<b
let number=2..<8
for num in number
{
print(num)
}