Почему sorted() работает, а sort() нет?

Рейтинг: 0Ответов: 1Опубликовано: 10.02.2023
let luckyNumbers = [7, 4, 38, 21, 16, 15, 12, 33, 31, 49]

luckyNumbers.filter { $0 % 2 != 0 }.sorted().map { "\($0) is lucky" }.forEach { print($0)}

//luckyNumbers.filter { $0 % 2 != 0 }.sort().map { "\($0) is lucky" }.forEach { print($0)}
// Error "Value of tuple type '()' has no member 'map'"

Ответы

▲ 0

sort сортирует массив по-месту, т.е. модифицирует оригинальный массив, и не возвращает ничего.

sorted возвращает новый отсортированный массив, не трогая оригинал.