如何显示数组计数减去数组计数?我有两个这样的数组:
var likedBy = [NSArray]()
var dislikedBy = [NSArray]()
我试图将计数作为UITextLabel上的字符串,如下所示:
imageCell.likeLabel.text = self.likedBy.count - self.dislikedBy.count
但我得到错误:
否“ - ”候选人产生预期的上下文结果类型 “字符串?”
有什么建议吗?
答案 0 :(得分:3)
您应该对\()
使用字符串插值,因为count
属性返回Int
,您需要String
来设置text
属性:
imageCell.likeLabel.text = "\(self.likedBy.count - self.dislikedBy.count)"
答案 1 :(得分:2)
替换你的行
imageCell.likeLabel.text = "\(self.likedBy.count - self.dislikedBy.count)"
答案 2 :(得分:1)
您可能还想在NSArray上编写扩展名以提供元素计数差异,以便您的代码更清晰,责任在正确的位置。如你所知,你的主代码流程对计算两个数组计数之间的差异不感兴趣,它想知道在减去不喜欢之后剩下多少喜欢。
extension NSArray {
func elementCountDiff(array: NSArray) -> Int {
return self.count - array.count
}
}
...
imageCell.likeLabel.text = String(self.likedBy.elementCountDiff(self.dislikedBy))