这个问题已经有了答案:
xcode 8 beta 3: Expected ',' joining parts of a multi-clause condition
1个答案
我正在尝试展开一个值,如果它有效,将其与大于0的值进行比较。
我是这样做的:
if let movieLength = movie.length as? Int, movieLength > 0 {
self.durationLabel.text = "\(movieLength) min"
} else {
self.durationLabel.isHidden = true
}
但我得到了错误
从“int”开始向下投射?只打开“int”选项;是否要使用“!”?
还尝试使用
where
关键字,但没有成功:if let movieLength = movie.length as? Int where movieLength > 0 {
self.durationLabel.text = "\(movieLength) min"
} else {
self.durationLabel.isHidden = true
}
出现错误:
应输入“,”以连接多子句条件的部分
我刚才在上面试过。
最佳答案
无需在if let
中显式展开,只需这样做即可。
if let movieLength = movie.length, movieLength > 0 {
self.durationLabel.text = "\(movieLength) min"
} else {
self.durationLabel.isHidden = true
}
您可以检查The Basics中的“可选绑定”以获得正确的语法。