以下是我如何返回表格视图的行数:
public func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if let dataCount = self.data?.count {
return dataCount
} else {
return 0
}
}
但是,我想使用可选链接使其更简洁......但编译器对我的代码并不满意。我试试这个:
return self.data?.count
它抱怨计数属于Int类型?我应该强行打开它,所以我这样做:
return self.data?.count!
并且它抱怨count是Int类型。使用可选链接,如果数据不是nil,它应该只得到计数,如果数组不是nil,那么我知道count将返回ok。
我错过了什么?感谢
答案 0 :(得分:7)
这是范围问题:
return (self.data?.count)!
或者使用可选链接
return self.data?.count ?? 0
如果self.data
为nil
则评估为零,而第一个解决方案将抛出一个
那种情况下的运行时异常。