Я уже просмотрел несколько сообщений о том, как функции высшего порядка - filter, map, sort, reduce
и т. Д. Работают в Swift .
Что я хочу знать, так это внутреннюю работу этих методов. Используют ли они потоковое для получения окончательного результата?
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
var arr1 = arr.map { $0 * $0 }.filter { $0 % 2 == 0 } //Output: [4, 16, 36, 64, 100]
Я имею в виду, что в приведенном выше коде каждый раз, когда map
обрабатывает элемент из arr
, он будет передан в filter
, не дожидаясь, пока map
обработает все элементы в arr