Мы используем файлы cookie
Мы используем файлы cookie для улучшения работы сайта и предоставления вам персонализированного опыта. Правила использования файлов cookie можно найти в нашей политике конфиденциальности
Kotlin предлагает обширный набор функций расширения для работы с коллекциями, которые делают код более лаконичным и читаемым. Их можно условно разделить на следующие категории:
1. Фильтрация:
filter
/filterNot
: Возвращает список элементов, соответствующих/не соответствующих предикату.filterNotNull
: Возвращает список всех ненулевых элементов.filterIsInstance<T>
: Возвращает список всех элементов, являющихся экземплярами типа T
.2. Преобразование (Mapping):
map
/mapIndexed
: Преобразует каждый элемент коллекции в новый элемент. mapIndexed
также получает индекс элемента.mapNotNull
/mapIndexedNotNull
: Преобразует каждый элемент, отбрасывая null
.flatMap
: Преобразует каждый элемент в коллекцию и объединяет их в одну плоскую коллекцию.zip
: Создает коллекцию пар из элементов двух коллекций с одинаковыми индексами.3. Агрегация (Reducing):
reduce
/fold
: Применяет операцию к последовательным элементам коллекции, накапливая результат. fold
принимает начальное значение.sum
, average
, count
, max
, min
: Базовые агрегирующие функции.4. Упорядочивание:
sorted
/sortedDescending
: Возвращает отсортированную коллекцию.sortedBy
/sortedByDescending
: Возвращает отсортированную коллекцию по результату применения функции-селектора.reversed
: Возвращает список в обратном порядке.shuffled
: Возвращает перемешанный список.5. Получение элементов:
first
/firstOrNull
: Возвращает первый элемент.last
/lastOrNull
: Возвращает последний элемент.find
/findLast
: Возвращает первый/последний элемент,Kotlin предлагает обширный набор функций расширения для работы с коллекциями, которые делают код более лаконичным и читаемым. Их можно условно разделить на следующие категории:
1. Фильтрация:
filter
/filterNot
: Возвращает список элементов, соответствующих/не соответствующих предикату.filterNotNull
: Возвращает список всех ненулевых элементов.filterIsInstance<T>
: Возвращает список всех элементов, являющихся экземплярами типа T
.2. Преобразование (Mapping):
map
/mapIndexed
: Преобразует каждый элемент коллекции в новый элемент. mapIndexed
также получает индекс элемента.mapNotNull
/mapIndexedNotNull
: Преобразует каждый элемент, отбрасывая null
.flatMap
: Преобразует каждый элемент в коллекцию и объединяет их в одну плоскую коллекцию.zip
: Создает коллекцию пар из элементов двух коллекций с одинаковыми индексами.3. Агрегация (Reducing):
reduce
/fold
: Применяет операцию к последовательным элементам коллекции, накапливая результат. fold
принимает начальное значение.sum
, average
, count
, max
, min
: Базовые агрегирующие функции.4. Упорядочивание:
sorted
/sortedDescending
: Возвращает отсортированную коллекцию.sortedBy
/sortedByDescending
: Возвращает отсортированную коллекцию по результату применения функции-селектора.reversed
: Возвращает список в обратном порядке.shuffled
: Возвращает перемешанный список.5. Получение элементов:
first
/firstOrNull
: Возвращает первый элемент.last
/lastOrNull
: Возвращает последний элемент.find
/findLast
: Возвращает первый/последний элемент,Зарегистрируйтесь или войдите, чтобы получить доступ к полным ответам на все вопросы из банка вопросов.