Как указано в Array и Dictionary forEach(_:)
Методы экземпляра:
Вызывает данное замыкание на каждом элементе последовательности в том же порядок как цикл for-in.
Тем не менее, адаптирован из Обзор последовательности:
Последовательность представляет собой список значений, которые вы можете выполнить через один время. Наиболее распространенный способ итерации по элементам последовательности заключается в использовании for-in цикла.
Предположим, что итерационная последовательность forEach(_:)
или for in
:
let closedRange = 1...3
for element in closedRange { print(element) } // 1 2 3
closedRange.forEach { print($0) } // 1 2 3
Или (массив):
let array = [1, 2, 3]
for element in array { print(element) } // 1 2 3
array.forEach { print($0) } // 1 2 3
Выдает тот же результат.
Почему forEach(_:)
существует даже? Какая польза от использования его вместо цикла for in
? будут ли они одинаковыми с точки зрения точки зрения?
В качестве предположения он может быть синтаксическим сахаром, особенно при работе с функциональным программированием.