鉴于您有一系列可选项:
var values = [AnyObject?]
你可以在可选绑定之前以某种方式使用where
子句来检查非空数组吗?例如,我知道我们可以这样做:
if !values.isEmpty {
if let value = values[0] {
// ...
}
}
我们可以在可选绑定后链接where
过滤器:
// doesn't do you any good when the array is empty
if let value = values[0] where !values.isEmpty {
// ...
}
我希望能够首先评估where
,以防止数组索引超出范围错误:
// Not valid syntax
if where !values.isEmpty, let value = values[0] {
// ...
}
Swift 1.2或2.x中是否有某种形式的语法允许我以有效的方式表达它?
答案 0 :(得分:2)
很简单:
if let value = values.first {
...
}