作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
<分区>
编辑:
我正在学习 Raywenderlich 的教程。我的问题是为什么我们使用可选绑定(bind),即 if let
它有什么区别?为什么我们不能使用可选链接——类似于 A 和 B 行?
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("IconCell", forIndexPath: indexPath)
let icon = icons[indexPath.row]
cell.textLabel?.text = icon.title // Line A
cell.detailTextLabel?.text = icon.subtitle // Line B
if let imageView = cell.imageView, iconImage = icon.image { //Line C
imageView.image = iconImage
}
老师的解释是:
当我们实例化一个图标时,我们会根据字符串获得对图像的引用...如果出于某种原因该图像未包含在包中、未重命名或删除,则该图标可能没有与之关联的图像...我们必须使用 if let 来确保它在那里。
我还是不明白其中的区别。
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!