我正在寻找一种评估 Swift 的方法Bool
简洁地概括为一个if
声明,当Bool
是可选对象的属性:
var objectWithBool: ClassWithBool?
// ...
if let obj = objectWithBool {
if obj.bool {
// bool == true
} else {
// bool == false
}
} else {
// objectWithBool == nil
}
有没有办法将这些结合起来if
声明?在 Objective-C 中这可以很容易地完成,作为nil
可以用相同的表达式来计算对象:
if (objectWithBool.bool) {
// bool == true
} else {
// bool == false || objectWithBool == nil
}
啊,找到了:
if objectWithBool?.bool == true {
// objectWithBool != nil && bool == true
} else {
// objectWithBool == nil || bool == false
}
可选的链接表达式objectWithBool?.bool
返回一个可选的Bool
。由于它是可选的,因此该表达式单独出现在if
语句将被评估为true
/false
基于可选值是否包含值。
通过使用==
运算符if
语句检查可选值,在本例中可以是true
, false
, or nil
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)