Jos*_*osh 2 swift optional-binding
我知道这个问题在这里,但它只是部分回答了我的问题,我无法对答案发表评论,所以我不得不在这里发帖.
可选绑定和只是简单地使用?有什么区别?我的理解是你何时使用?要解包变量,如果它包含nil值,则不运行使用它的代码.(如果不是这样,请纠正我.)
如果你有一段你只想运行的代码块,你可以使用可选的绑定(if let)nil.
仅在访问可选变量的属性/方法时才使用可选链接(the ?).
但是有些情况下可选链接是不可能的(即您没有访问可选变量的属性/方法,而是将该变量用于其他目的).例如
// let's assume `data` is a `NSData?` optional
if let imageData = data {
    let image = UIImage(data: imageData)
    // now do something with `image`
}
我们这样做是因为在这种情况下,我们不能使用可选的链接,并使用强制展开(例如let image = UIImage(data: data!))如果将崩溃data了nil.
| 归档时间: | 
 | 
| 查看次数: | 986 次 | 
| 最近记录: |