我正在尝试解开一个值,如果它有效,则将其比较为大于 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
}
您可以查看基础知识中的"可选绑定"以获取正确的语法。