sort
fun IntArray.sort()
fun LongArray.sort()
fun ByteArray.sort()
fun ShortArray.sort()
fun DoubleArray.sort()
fun FloatArray.sort()
fun CharArray.sort()
Сортирует массив на месте.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val intArray = intArrayOf(4, 3, 2, 1)
// before sorting
println(intArray.joinToString()) // 4, 3, 2, 1
intArray.sort()
// after sorting
println(intArray.joinToString()) // 1, 2, 3, 4
//sampleEnd
}fun <T : Comparable<T>> Array<out T>.sort()
Сортирует массив на месте в соответствии с естественным порядком элементов.
Сортировка является стабильной. Это означает, что равные элементы сохраняют свой порядок относительно друг друга после сортировки.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
class Person(val firstName: String, val lastName: String) : Comparable<Person> {
override fun compareTo(other: Person): Int = this.lastName.compareTo(other.lastName)
override fun toString(): String = "$firstName $lastName"
}
val people = arrayOf(
Person("Ragnar", "Lodbrok"),
Person("Bjorn", "Ironside"),
Person("Sweyn", "Forkbeard")
)
// before sorting
println(people.joinToString()) // Ragnar Lodbrok, Bjorn Ironside, Sweyn Forkbeard
people.sort()
// after sorting
println(people.joinToString()) // Sweyn Forkbeard, Bjorn Ironside, Ragnar Lodbrok
//sampleEnd
}fun <T : Comparable<T>> Array<out T>.sort( fromIndex: Int = 0, toIndex: Int = size)
Сортирует диапазон в массиве на месте.
Сортировка является стабильной. Это означает, что равные элементы сохраняют свой порядок относительно друг друга после сортировки.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
class Person(val firstName: String, val lastName: String) : Comparable<Person> {
override fun compareTo(other: Person): Int = this.lastName.compareTo(other.lastName)
override fun toString(): String = "$firstName $lastName"
}
val people = arrayOf(
Person("Ragnar", "Lodbrok"),
Person("Bjorn", "Ironside"),
Person("Sweyn", "Forkbeard")
)
// before sorting
println(people.joinToString()) // Ragnar Lodbrok, Bjorn Ironside, Sweyn Forkbeard
people.sort(0, 2)
// after sorting
println(people.joinToString()) // Bjorn Ironside, Ragnar Lodbrok, Sweyn Forkbeard
//sampleEnd
}Параметры
fromIndex - начало диапазона (включительно) для сортировки, по умолчанию 0.
toIndex - конец диапазона (исключительно) для сортировки, по умолчанию размер массива.
Исключения
IndexOutOfBoundsException - если fromIndex меньше нуля или toIndex больше размера массива.
IllegalArgumentException - если fromIndex больше, чем toIndex.
fun ByteArray.sort(fromIndex: Int = 0, toIndex: Int = size)
fun ShortArray.sort(fromIndex: Int = 0, toIndex: Int = size)
fun IntArray.sort(fromIndex: Int = 0, toIndex: Int = size)
fun LongArray.sort(fromIndex: Int = 0, toIndex: Int = size)
fun FloatArray.sort(fromIndex: Int = 0, toIndex: Int = size)
fun DoubleArray.sort(fromIndex: Int = 0, toIndex: Int = size)
fun CharArray.sort(fromIndex: Int = 0, toIndex: Int = size)
Сортирует диапазон в массиве на месте.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val intArray = intArrayOf(4, 3, 2, 1)
// before sorting
println(intArray.joinToString()) // 4, 3, 2, 1
intArray.sort(0, 3)
// after sorting
println(intArray.joinToString()) // 2, 3, 4, 1
//sampleEnd
}Параметры
fromIndex - начало диапазона (включительно) для сортировки, по умолчанию 0.
toIndex - конец диапазона (исключительно) для сортировки, по умолчанию размер массива.
Исключения
IndexOutOfBoundsException - если fromIndex меньше нуля или toIndex больше размера массива.
IllegalArgumentException - если fromIndex больше, чем toIndex.
@ExperimentalUnsignedTypes fun UIntArray.sort()
@ExperimentalUnsignedTypes fun ULongArray.sort()
@ExperimentalUnsignedTypes fun UByteArray.sort()
@ExperimentalUnsignedTypes fun UShortArray.sort()
Сортирует массив на месте.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val intArray = intArrayOf(4, 3, 2, 1)
// before sorting
println(intArray.joinToString()) // 4, 3, 2, 1
intArray.sort()
// after sorting
println(intArray.joinToString()) // 1, 2, 3, 4
//sampleEnd
}@ExperimentalUnsignedTypes fun UIntArray.sort( fromIndex: Int = 0, toIndex: Int = size)
@ExperimentalUnsignedTypes fun ULongArray.sort( fromIndex: Int = 0, toIndex: Int = size)
@ExperimentalUnsignedTypes fun UByteArray.sort( fromIndex: Int = 0, toIndex: Int = size)
@ExperimentalUnsignedTypes fun UShortArray.sort( fromIndex: Int = 0, toIndex: Int = size)
Сортирует диапазон в массиве на месте.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val intArray = intArrayOf(4, 3, 2, 1)
// before sorting
println(intArray.joinToString()) // 4, 3, 2, 1
intArray.sort(0, 3)
// after sorting
println(intArray.joinToString()) // 2, 3, 4, 1
//sampleEnd
}Параметры
fromIndex - начало диапазона (включительно) для сортировки, по умолчанию 0.
toIndex - конец диапазона (исключительно) для сортировки, по умолчанию размер массива.
Исключения
IndexOutOfBoundsException - если fromIndex меньше нуля или toIndex больше размера массива.
IllegalArgumentException - если fromIndex больше, чем toIndex.
fun <T : Comparable<T>> MutableList<T>.sort()
Сортирует элементы в списке на месте в соответствии с их естественным порядком сортировки.
Сортировка является стабильной. Это означает, что равные элементы сохраняют свой порядок относительно друг друга после сортировки.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val mutableList = mutableListOf(4, 3, 2, 1)
// before sorting
println(mutableList.joinToString()) // 4, 3, 2, 1
mutableList.sort()
// after sorting
println(mutableList.joinToString()) // 1, 2, 3, 4
//sampleEnd
}fun <T> MutableList<T>.sort(comparator: Comparator<in T>)Устарело: Используйте sortWith(comparator) вместо этого.
inline fun <T> MutableList<T>.sort(comparison: (T, T) -> Int)Устарело: Используйте sortWith(Comparator(comparison)) вместо этого.
@DeprecatedSinceKotlin("1.6") fun <T> Array<out T>.sort(
comparison: (a: T, b: T) -> Int) Устарело: Используйте sortWith вместо этогоСортирует массив на месте в соответствии с порядком, заданным заданной функцией сравнения.
Сортировка является стабильной. Это означает, что равные элементы сохраняют свой порядок относительно друг друга после сортировки.
@DeprecatedSinceKotlin("1.6") inline fun ByteArray.sort(
noinline comparison: (a: Byte, b: Byte) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотеки@DeprecatedSinceKotlin("1.6") inline fun ShortArray.sort(
noinline comparison: (a: Short, b: Short) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотеки@DeprecatedSinceKotlin("1.6") inline fun IntArray.sort(
noinline comparison: (a: Int, b: Int) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотеки@DeprecatedSinceKotlin("1.6") inline fun LongArray.sort(
noinline comparison: (a: Long, b: Long) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотеки@DeprecatedSinceKotlin("1.6") inline fun FloatArray.sort(
noinline comparison: (a: Float, b: Float) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотеки@DeprecatedSinceKotlin("1.6") inline fun DoubleArray.sort(
noinline comparison: (a: Double, b: Double) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотеки@DeprecatedSinceKotlin("1.6") inline fun CharArray.sort(
noinline comparison: (a: Char, b: Char) -> Int) Устаревшее: Используйте другие функции сортировки из стандартной библиотекиСортирует массив на месте в соответствии с порядком, указанным заданной функцией сравнения.
© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/sort.html