发布于 2015-06-14 01:51:20 | 132 次阅读 | 评论: 0 | 来源: 网络整理
正如上面“ 可选链可替代强制解析”中所述,你可以利用可选链的可选值获取属性,并且检查属性是否获取成功。然而,你不能使用可选链为属性赋值。
使用上述定义的类来创建一个人实例,并再次尝试后去它的numberOfRooms
属性:
let john = Person()
if let roomCount = john.residence?.numberOfRooms {
println("John's residence has (roomCount) room(s).")
} else {
println("Unable to retrieve the number of rooms.")
}
// 打印 "Unable to retrieve the number of rooms。
由于john.residence
是空,所以这个可选链和之前一样失败了,但是没有运行时错误