Подтвердить что ты не робот

Могу ли я использовать "where" внутри цикла for-swift?

Есть ли возможность использовать ключевое слово "where" в другом месте, а затем переключатель? Могу ли я использовать его в цикле for for?

У меня есть массив с bools, все со значением, могу ли я сделать что-то вроде этого:

var boolArray: [Bool] = []

//(...) set values and do stuff


for value where value == true in boolArray {
   doSomething()
}

Это было бы намного лучше, чем использовать if, поэтому мне интересно, есть ли возможность использовать, где в сочетании с for-loop. Тай для вашего времени.

4b9b3361

Ответ 1

В Swift 2 был добавлен новый синтаксис where:

for value in boolArray where value == true {
   ...
}

В Pre 2.0 одним решением было бы вызвать .filter в массиве, прежде чем вы его выполните:

for value in boolArray.filter({ $0 == true }) {
   doSomething()
}