所以,我有一个看起来与此类似的 for 循环:
for var i = 0; i < results.count ; i += 1 {
if (results[i] < 5) {
results.removeAtIndex(i)
i -= 1
}
}
这曾经奏效。但是当我将其更改为首选的 Swift 3.0 语法时:
for var i in 0..<results.count {
if (results[i] < 5) {
results.removeAtIndex(i)
i -= 1
}
}
我得到一个数组 IOOBE 异常,因为它不会重新检查计数并继续直到原始results.count
.
我该如何解决?它现在有效,但我不想在未来遇到麻烦。