НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
76 of 1310 menu

Функция toSortedMap

Функция toSortedMap преобразует коллекцию пар ключ-значение в отсортированную карту типа SortedMap. Элементы карты автоматически сортируются по ключам в естественном порядке. Также можно передать компаратор для определения собственного порядка сортировки.

Импорт

import kotlin.collections.toSortedMap

Синтаксис

fun <K : Comparable<K>, V> Iterable<Pair<K, V>>.toSortedMap(): SortedMap<K, V>
fun <K, V> Iterable<Pair<K, V>>.toSortedMap(comparator: Comparator<in K>): SortedMap<K, V>
fun <K : Comparable<K>, V> Map<out K, V>.toSortedMap(): SortedMap<K, V>
fun <K, V> Map<out K, V>.toSortedMap(comparator: Comparator<in K>): SortedMap<K, V>

Пример

Преобразуем список пар в отсортированную карту с сортировкой по ключам в естественном порядке:

val pairs = listOf(3 to "c", 1 to "a", 2 to "b", 5 to "e", 4 to "d") val res: SortedMap<Int, String> = pairs.toSortedMap() println(res)

Результат выполнения кода:

SortedMap {1=a, 2=b, 3=c, 4=d, 5=e}

Пример

Преобразуем существующую карту в отсортированную с сортировкой по ключам в естественном порядке:

val map = mapOf("zebra" to 5, "apple" to 1, "banana" to 2) val res: SortedMap<String, Int> = map.toSortedMap() println(res)

Результат выполнения кода:

SortedMap {apple=1, banana=2, zebra=5}

Пример

Используем компаратор для сортировки ключей в обратном порядке:

val pairs = listOf(1 to "a", 3 to "c", 2 to "b", 5 to "e", 4 to "d") val comparator = compareByDescending<Int> { it } val res: SortedMap<Int, String> = pairs.toSortedMap(comparator) println(res)

Результат выполнения кода:

SortedMap {5=e, 4=d, 3=c, 2=b, 1=a}

Пример

Создаем отсортированную карту из пар с строковыми ключами, используя компаратор для сортировки по длине строки:

val pairs = listOf("apple" to 5, "kiwi" to 4, "banana" to 6, "pear" to 4) val comparator = compareBy<String> { it.length } val res: SortedMap<String, Int> = pairs.toSortedMap(comparator) println(res)

Результат выполнения кода:

SortedMap {kiwi=4, pear=4, apple=5, banana=6}

Смотрите также

  • функцию toMap,
    которая преобразует коллекцию в обычную карту
  • функцию toMutableMap,
    которая преобразует коллекцию в изменяемую карту
  • функцию toList,
    которая преобразует коллекцию в список
  • функцию toSet,
    которая преобразует коллекцию в множество
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить