Swift 空合运算符
在 Swift 中,可以使用空合运算符检查可选类型是否有值。其定义为(a??b
)。它解包可选的 a
并返回它(如果它有值),或者如果 a
为零则返回默认值 b
。
实例
var someValue:Int!
let defaultValue = 5
let unwrappedValue:Int = someValue ?? defaultValue
print(unwrappedValue)
结果如下:
5
在上面的程序中,变量 someValue
被定义为可选的,并且包含 nil
值。空合运算符无法解包可选值,因此返回默认值。因此,语句 print(unwrappedValue)
在控制台中输出 5。
var someValue:Int? = 10
let defaultValue = 5
let unwrappedValue:Int = someValue ?? defaultValue
print(unwrappedValue)
结果如下:
10
然而,在上面的程序中,可选变量 someValue
被初始化为 10。因此,空合运算符成功地从 someValue
中解包该值。因此,声明 someValue??defaultValue
返回 10,语句 print(unwrappedValue)
在控制台中输出 10。