Назад к вопросам
JuniorТеорияЧасто
Что выведет программа?
let numbers = [1, 2, 3]
let result = numbers.filter { $0 < 3 }.map { $0 * 10 }
print(result)[10, 20]
- Ждать
[30], считая, чтоfilterубирает элементы, для которых замыкание вернулоtrue. Он их оставляет, поэтому1и2остаются и умножаются. - Ждать
[10, 20, 30], считая, что каждый вызов в цепочке работает сnumbers.mapполучает результатfilter,[1, 2], поэтому умножаются только два числа.
- Что выведет программа, если поменять местами
filterиmap? - Как получить тот же результат одним циклом
for-in?