使用三元运算符的Swift UITableView numberOfRowsInSection

时间:2015-09-26 12:35:20

标签: swift uitableview nsmutablearray

以下控制器具有 numberOfRowsInSection: ofUITableViewDataSource。

class CityList: UIViewController,UITableViewDataSource,UITableViewDelegate {

  weak var cityListArray:NSMutableArray? = nil

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.cityListArray?.count
}
}

return self.cityListArray?.count显示可选类型int的值?没打开你是不是想用#39;!'或"?"

如何在这里使用三元运算符,如果数组为空则返回0?

如果对象为零,则Objective-C的默认值返回0。

1 个答案:

答案 0 :(得分:1)

这有两个答案。在问题的评论中已经提到了一个。

return self.cityListArray?.count ?? 0

这似乎比使用三元运算符的更短,如下所述。

  return (self.cityListArray != nil) ? self.cityListArray!.count : 0