标签:
Optional
是 Swift 的一大特色,也是 Swift 初学者最容易困惑的问题可选的
,表示该变量可以有一个指定类型的值,也可以是 nil
?
,表示该变量是可选的nil
//: num 可以是一个整数,也可以是 nil,注意如果为 nil,不能参与计算
let num: Int? = 10
nil
,不允许参与计算解包(unwrap)
后才能参与计算!
,可以强行解包注意:必须要确保解包后的值不是 nil,否则会报错
//: num 可以是一个整数,也可以是 nil,注意如果为 nil,不能参与计算
let num: Int? = 10
//: 如果 num 为 nil,使用 `!` 强行解包会报错
let r1 = num! + 100
//: 使用以下判断,当 num 为 nil 时,if 分支中的代码不会执行
if let n = num {
let r = n + 10
}
unexpectedly found nil while unwrapping an Optional value
翻译
在[解包]一个可选值时发现 nil
??
运算符??
运算符可以用于判断 变量/常量
的数值是否是 nil
,如果是则使用后面的值替代??
能够简化代码的编写let num: Int? = nil
let r1 = (num ?? 0) + 10
print(r1)
标签:
原文地址:http://www.cnblogs.com/-liangjingjing/p/5349729.html