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

Функция toSortedSet

Функция toSortedSet преобразует коллекцию в отсортированное множество типа TreeSet. При этом удаляются все дубликаты элементов, а оставшиеся элементы сортируются в естественном порядке. Функция может принимать компаратор для определения пользовательского порядка сортировки.

Импорт

import kotlin.collections.toSortedSet

Синтаксис

fun <T : Comparable<T>> Iterable<T>.toSortedSet(): TreeSet<T>
fun <T> Iterable<T>.toSortedSet(comparator: Comparator<in T>): TreeSet<T>
fun <T : Comparable<T>> Array<T>.toSortedSet(): TreeSet<T>
fun <T> Array<T>.toSortedSet(comparator: Comparator<in T>): TreeSet<T>

Пример

Преобразуем список чисел в отсортированное множество:

val numbers = listOf(5, 2, 8, 2, 1, 5, 3) val sortedSet = numbers.toSortedSet() println(sortedSet)

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

TreeSet [1, 2, 3, 5, 8]

Пример

Преобразуем массив символов в отсортированное множество:

val chars = arrayOf('d', 'a', 'c', 'b', 'a', 'e') val sortedChars = chars.toSortedSet() println(sortedChars)

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

TreeSet ['a', 'b', 'c', 'd', 'e']

Пример

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

val numbers = listOf(5, 2, 8, 1, 3) val reverseSorted = numbers.toSortedSet(compareByDescending { it }) println(reverseSorted)

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

TreeSet [8, 5, 3, 2, 1]

Пример

Работа с пользовательскими объектами и компаратором:

data class Person(val name: String, val age: Int) val people = listOf( Person("John", 25), Person("Anna", 30), Person("John", 25), Person("Mike", 22) ) val sortedByAge = people.toSortedSet(compareBy { it.age }) println(sortedByAge.map { it.age })

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

List [22, 25, 30]

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

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