Итак, у меня есть цикл 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.
Как это исправить? Сейчас это работает, но я не хочу попасть в беду в будущем.