Список
interface List<out E> : Collection<E>
Обобщённый упорядоченный набор элементов. Методы в этом интерфейсе поддерживают только чтение списка; доступ для чтения/записи поддерживается через интерфейс MutableList.
Параметры
E - тип элементов, содержащихся в списке. Список является ковариативным по типу элемента.
Свойства
размер
Возвращает размер коллекции.
abstract val size: Int
Функции
содержит
Проверяет, содержится ли указанный элемент в этой коллекции.
abstract fun contains(element: E): Boolean
содержит_все
Проверяет, содержатся ли все элементы в указанной коллекции в этой коллекции.
abstract fun containsAll(elements: Collection<E>): Boolean
получить
Возвращает элемент по указанному индексу в списке.
abstract operator fun get(index: Int): E
индекс_первого_вхождения
Возвращает индекс первого вхождения указанного элемента в список или -1, если указанный элемент не содержится в списке.
abstract fun indexOf(element: E): Int
пустой
Возвращает true , если коллекция пуста (не содержит элементов), false в противном случае.
abstract fun isEmpty(): Boolean
итератор
Возвращает итератор по элементам этого объекта.
abstract fun iterator(): Iterator<E>
индекс_последнего_вхождения
Возвращает индекс последнего вхождения указанного элемента в список или -1, если указанный элемент не содержится в списке.
abstract fun lastIndexOf(element: E): Int
итератор_списка
Возвращает итератор списка по элементам в этом списке (в правильной последовательности).
abstract fun listIterator(): ListIterator<E>
Возвращает итератор списка по элементам в этом списке (в правильной последовательности), начиная с указанного индекса.
abstract fun listIterator(index: Int): ListIterator<E>
подсписок
Возвращает представление части этого списка между указанным начальным индексом (включительно) и конечным индексом (исключительно). Возвращаемый список подкрепляется этим списком, поэтому неструктурные изменения в возвращаемом списке отражаются в этом списке и наоборот.
abstract fun subList(fromIndex: Int, toIndex: Int): List<E>
Расширяемые свойства
индексы
Возвращает IntRange допустимых индексов для этой коллекции.
val Collection<*>.indices: IntRange
индекс_последнего_элемента
Возвращает индекс последнего элемента в списке или -1, если список пуст.
val <T> List<T>.lastIndex: Int
Расширяемые функции
все
Возвращает true если все элементы соответствуют заданному предикату.
fun <T> Iterable<T>.all(predicate: (T) -> Boolean): Boolean
любой
Возвращает true если коллекция содержит хотя бы один элемент.
fun <T> Iterable<T>.any(): Boolean
Возвращает true если хотя бы один элемент соответствует заданному предикату.
fun <T> Iterable<T>.any(predicate: (T) -> Boolean): Boolean
asIterable
Возвращает эту коллекцию как Iterable.
fun <T> Iterable<T>.asIterable(): Iterable<T>
asReversed
Возвращает перевернутый доступ к исходному списку. Все изменения, внесенные в исходный список, будут отражены в перевернутом.
fun <T> List<T>.asReversed(): List<T>
asSequence
Создает экземпляр Sequence, который оборачивает исходную коллекцию, возвращая её элементы при итерации.
fun <T> Iterable<T>.asSequence(): Sequence<T>
associate
associateBy
Возвращает Map содержащий элементы из заданной коллекции, индексированные ключом, возвращённым из функции keySelector, применённой к каждому элементу.
fun <T, K> Iterable<T>.associateBy( keySelector: (T) -> K ): Map<K, T>
Возвращает Map содержащий значения, предоставленные функцией valueTransform и индексированные функцией keySelector, применённой к элементам заданной коллекции.
fun <T, K, V> Iterable<T>.associateBy( keySelector: (T) -> K, valueTransform: (T) -> V ): Map<K, V>
associateByTo
Заполняет и возвращает изменяемую карту destination парами ключ-значение, где ключ предоставляется функцией keySelector, применённой к каждому элементу заданной коллекции, а значением является сам элемент.
fun <T, K, M : MutableMap<in K, in T>> Iterable<T>.associateByTo( destination: M, keySelector: (T) -> K ): M
Заполняет и возвращает изменяемую карту destination парами ключ-значение, где ключ предоставляется функцией keySelector, а значение — функцией valueTransform, применённой к элементам заданной коллекции.
fun <T, K, V, M : MutableMap<in K, in V>> Iterable<T>.associateByTo( destination: M, keySelector: (T) -> K, valueTransform: (T) -> V ): M
associateTo
Заполняет и возвращает изменяемую карту destination парами ключ-значение, предоставленными функцией transform, применённой к каждому элементу заданной коллекции.
fun <T, K, V, M : MutableMap<in K, in V>> Iterable<T>.associateTo( destination: M, transform: (T) -> Pair<K, V> ): M
associateWith
Возвращает Map, где ключами являются элементы из заданной коллекции, а значениями — результаты применения функции valueSelector к каждому элементу.
fun <K, V> Iterable<K>.associateWith( valueSelector: (K) -> V ): Map<K, V>
associateWithTo
Заполняет и возвращает изменяемую карту назначения парами ключ-значение для каждого элемента заданного набора, где ключом является сам элемент, а значением является значение, возвращаемое функцией valueSelector, применённой к этому ключу.
fun <K, V, M : MutableMap<in K, in V>> Iterable<K>.associateWithTo( destination: M, valueSelector: (K) -> V ): M
binarySearch
Ищет данный элемент в этом списке или его диапазоне с помощью алгоритма бинарного поиска. Ожидается, что список отсортирован по возрастанию в соответствии с естественным порядком сортировки элементов, иначе результат не определён.
fun <T : Comparable<T>> List<T?>.binarySearch( element: T?, fromIndex: Int = 0, toIndex: Int = size ): Int
Ищет данный элемент в этом списке или его диапазоне с помощью алгоритма бинарного поиска. Ожидается, что список отсортирован по возрастанию в соответствии с заданным компаратором, иначе результат не определён.
fun <T> List<T>.binarySearch( element: T, comparator: Comparator<in T>, fromIndex: Int = 0, toIndex: Int = size ): Int
Ищет в этом списке или его диапазоне элемент, для которого заданная функция сравнения возвращает ноль с помощью алгоритма бинарного поиска.
fun <T> List<T>.binarySearch( fromIndex: Int = 0, toIndex: Int = size, comparison: (T) -> Int ): Int
binarySearchBy
Ищет в этом списке или его диапазоне элемент, имеющий ключ, возвращённый заданной функцией селектора, равный заданному значению ключа с помощью алгоритма бинарного поиска. Ожидается, что список отсортирован по возрастанию в соответствии с естественным порядком сортировки ключей его элементов; в противном случае результат не определён.
fun <T, K : Comparable<K>> List<T>.binarySearchBy( key: K?, fromIndex: Int = 0, toIndex: Int = size, selector: (T) -> K? ): Int
chunked
Разбивает этот набор на список списков, каждый из которых не превышает заданный размер.
fun <T> Iterable<T>.chunked(size: Int): List<List<T>>
Разбивает этот набор на несколько списков, каждый из которых не превышает заданный размер, и применяет заданную функцию преобразования к каждому.
fun <T, R> Iterable<T>.chunked( size: Int, transform: (List<T>) -> R ): List<R>
component1
Возвращает первый элемент из списка.
operator fun <T> List<T>.component1(): T
component2
Возвращает второй элемент из списка.
operator fun <T> List<T>.component2(): T
component3
Возвращает третий элемент из списка.
operator fun <T> List<T>.component3(): T
component4
Возвращает четвёртый элемент из списка.
operator fun <T> List<T>.component4(): T
component5
Возвращает пятый элемент из списка.
operator fun <T> List<T>.component5(): T
contains
Возвращает true, если элемент найден в наборе.
operator fun <T> Iterable<T>.contains(element: T): Boolean
containsAll
Проверяет, содержатся ли все элементы указанного набора в этом наборе.
fun <T> Collection<T>.containsAll( elements: Collection<T> ): Boolean
distinct
Возвращает список, содержащий только уникальные элементы из заданного набора.
fun <T> Iterable<T>.distinct(): List<T>
distinctBy
Возвращает список, содержащий только элементы из заданного набора, имеющие уникальные ключи, возвращаемые заданной функцией selector.
fun <T, K> Iterable<T>.distinctBy( selector: (T) -> K ): List<T>
drop
Возвращает список, содержащий все элементы, кроме первых n элементов.
fun <T> Iterable<T>.drop(n: Int): List<T>
dropLast
Возвращает список, содержащий все элементы, кроме последних n элементов.
fun <T> List<T>.dropLast(n: Int): List<T>
dropLastWhile
Возвращает список, содержащий все элементы, кроме последних элементов, удовлетворяющих заданному предикату.
fun <T> List<T>.dropLastWhile( predicate: (T) -> Boolean ): List<T>
dropWhile
Возвращает список, содержащий все элементы, кроме первых элементов, удовлетворяющих заданному предикату.
fun <T> Iterable<T>.dropWhile( predicate: (T) -> Boolean ): List<T>
elementAt
Возвращает элемент по заданному индексу или выбрасывает исключение IndexOutOfBoundsException, если индекс находится за пределами этого списка.
fun <T> List<T>.elementAt(index: Int): T
elementAtOrElse
Возвращает элемент по заданному индексу или результат вызова функции defaultValue, если индекс находится за пределами этого списка.
fun <T> List<T>.elementAtOrElse( index: Int, defaultValue: (Int) -> T ): T
Возвращает элемент по заданному индексу или результат вызова функции defaultValue, если индекс находится за пределами этого набора.
fun <T> Iterable<T>.elementAtOrElse( index: Int, defaultValue: (Int) -> T ): T
elementAtOrNull
filter
Возвращает список, содержащий только элементы, удовлетворяющие заданному предикату.
fun <T> Iterable<T>.filter( predicate: (T) -> Boolean ): List<T>
filterIndexed
Возвращает список, содержащий только элементы, удовлетворяющие заданному предикату.
fun <T> Iterable<T>.filterIndexed( predicate: (index: Int, T) -> Boolean ): List<T>
filterIndexedTo
Добавляет все элементы, соответствующие заданному предикату, в заданное назначение.
fun <T, C : MutableCollection<in T>> Iterable<T>.filterIndexedTo( destination: C, predicate: (index: Int, T) -> Boolean ): C
filterIsInstance
Возвращает список, содержащий все элементы, являющиеся экземплярами указанного параметра типа R.
fun <R> Iterable<*>.filterIsInstance(): List<R>
Возвращает список, содержащий все элементы, являющиеся экземплярами указанного класса.
fun <R> Iterable<*>.filterIsInstance( klass: Class<R> ): List<R>
filterIsInstanceTo
Добавляет все элементы, являющиеся экземплярами указанного параметра типа R, в заданное назначение.
fun <R, C : MutableCollection<in R>> Iterable<*>.filterIsInstanceTo( destination: C ): C
Добавляет все элементы, являющиеся экземплярами указанного класса, в заданное назначение.
fun <C : MutableCollection<in R>, R> Iterable<*>.filterIsInstanceTo( destination: C, klass: Class<R> ): C
filterNot
Возвращает список, содержащий все элементы, не соответствующие заданному предикату.
fun <T> Iterable<T>.filterNot( predicate: (T) -> Boolean ): List<T>
filterNotNull
Возвращает список, содержащий все элементы, которые не являются null.
fun <T : Any> Iterable<T?>.filterNotNull(): List<T>
filterNotNullTo
Добавляет все элементы, которые не являются null в заданное назначение.
fun <C : MutableCollection<in T>, T : Any> Iterable<T?>.filterNotNullTo( destination: C ): C
filterNotTo
Добавляет все элементы, не соответствующие заданному предикату, в заданное назначение.
fun <T, C : MutableCollection<in T>> Iterable<T>.filterNotTo( destination: C, predicate: (T) -> Boolean ): C
filterTo
Добавляет все элементы, соответствующие заданному предикату, в заданное назначение.
fun <T, C : MutableCollection<in T>> Iterable<T>.filterTo( destination: C, predicate: (T) -> Boolean ): C
find
Возвращает первый элемент, соответствующий заданному предикату, или null если такой элемент не был найден.
fun <T> Iterable<T>.find(predicate: (T) -> Boolean): T?
findLast
Возвращает последний элемент, соответствующий заданному предикату, или null если такой элемент не был найден.
fun <T> List<T>.findLast(predicate: (T) -> Boolean): T?
fun <T> Iterable<T>.findLast(predicate: (T) -> Boolean): T?
first
Возвращает первый элемент.
fun <T> List<T>.first(): T
Возвращает первый элемент, соответствующий заданному предикату.
fun <T> Iterable<T>.first(predicate: (T) -> Boolean): T
firstNotNullOf
Возвращает первое значение, не равное null, полученное функцией transform, применённой к элементам коллекции в порядке итерации, или бросает NoSuchElementException, если такое значение не было получено.
fun <T, R : Any> Iterable<T>.firstNotNullOf( transform: (T) -> R? ): R
firstNotNullOfOrNull
Возвращает первое значение, не равное null, полученное функцией transform, применённой к элементам коллекции в порядке итерации, или null если такое значение не было получено.
fun <T, R : Any> Iterable<T>.firstNotNullOfOrNull( transform: (T) -> R? ): R?
firstOrNull
Возвращает первый элемент или null если список пуст.
fun <T> List<T>.firstOrNull(): T?
Возвращает первый элемент, соответствующий заданному
fun <T> Iterable<T>.firstOrNull(
predicate: (T) -> Boolean
): T?
flatMap
Возвращает единственный список всех элементов, полученных из результатов вызова функции
fun <T, R> Iterable<T>.flatMap(
transform: (T) -> Iterable<R>
): List<R>
fun <T, R> Iterable<T>.flatMap( transform: (T) -> Sequence<R> ): List<R>
flatMapIndexed
Возвращает единственный список всех элементов, полученных из результатов вызова функции
fun <T, R> Iterable<T>.flatMapIndexed(
transform: (index: Int, T) -> Iterable<R>
): List<R>
fun <T, R> Iterable<T>.flatMapIndexed( transform: (index: Int, T) -> Sequence<R> ): List<R>
flatMapIndexedTo
Добавляет все элементы, полученные из результатов вызова функции .
fun <T, R, C : MutableCollection<in R>> Iterable<T>.flatMapIndexedTo( destination: C, transform: (index: Int, T) -> Iterable<R> ): C
fun <T, R, C : MutableCollection<in R>> Iterable<T>.flatMapIndexedTo( destination: C, transform: (index: Int, T) -> Sequence<R> ): C
flatMapTo
Добавляет все элементы, полученные из результатов вызова функции .
fun <T, R, C : MutableCollection<in R>> Iterable<T>.flatMapTo( destination: C, transform: (T) -> Iterable<R> ): C
fun <T, R, C : MutableCollection<in R>> Iterable<T>.flatMapTo( destination: C, transform: (T) -> Sequence<R> ): C
flatten
Возвращает единственный список всех элементов из всех списков в заданном списке.
fun <T> Iterable<Iterable<T>>.flatten(): List<T>
fold
Накапливает значение, начиная со значения слева направо к текущему значению накопителя и каждому элементу.
fun <T, R> Iterable<T>.fold( initial: R, operation: (acc: R, T) -> R ): R
foldIndexed
Накапливает значение, начиная со значения слева направо к текущему значению накопителя и каждому элементу с его индексом в исходном списке.
fun <T, R> Iterable<T>.foldIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): R
foldRight
Накапливает значение, начиная со значения справа налево к каждому элементу и текущему значению накопителя.
fun <T, R> List<T>.foldRight( initial: R, operation: (T, acc: R) -> R ): R
foldRightIndexed
Накапливает значение, начиная со значения справа налево к каждому элементу с его индексом в исходном списке и текущему значению накопителя.
fun <T, R> List<T>.foldRightIndexed( initial: R, operation: (index: Int, T, acc: R) -> R ): R
forEach
Выполняет заданное
fun <T> Iterable<T>.forEach(action: (T) -> Unit)
forEachIndexed
Выполняет заданное действие над каждым элементом, предоставляя последовательный индекс вместе с элементом.
fun <T> Iterable<T>.forEachIndexed( action: (index: Int, T) -> Unit)
getOrElse
Возвращает элемент по заданному , если
fun <T> List<T>.getOrElse(
index: Int,
defaultValue: (Int) -> T
): T
getOrNull
Возвращает элемент по заданному находится вне границ этого списка.
fun <T> List<T>.getOrNull(index: Int): T?
groupBy
Группирует элементы исходного набора по ключу, возвращаемому заданной функцией keySelector, применённой к каждому элементу, и возвращает карту, где каждый ключ группы связан со списком соответствующих элементов.
fun <T, K> Iterable<T>.groupBy( keySelector: (T) -> K ): Map<K, List<T>>
Группирует значения, возвращаемые функцией valueTransform, применённой к каждому элементу исходного набора, по ключу, возвращаемому заданной функцией keySelector, применённой к элементу, и возвращает карту, где каждый ключ группы связан со списком соответствующих значений.
fun <T, K, V> Iterable<T>.groupBy( keySelector: (T) -> K, valueTransform: (T) -> V ): Map<K, List<V>>
groupByTo
Группирует элементы исходного набора по ключу, возвращаемому заданной функцией keySelector, применённой к каждому элементу, и помещает в карту
fun <T, K, M : MutableMap<in K, MutableList<T>>> Iterable<T>.groupByTo(
destination: M,
keySelector: (T) -> K
): M
Группирует значения, возвращаемые функцией valueTransform, применённой к каждому элементу исходного набора, по ключу, возвращаемому заданной функцией keySelector, применённой к элементу, и помещает в карту
fun <T, K, V, M : MutableMap<in K, MutableList<V>>> Iterable<T>.groupByTo(
destination: M,
keySelector: (T) -> K,
valueTransform: (T) -> V
): M
groupingBy
Создаёт источник Группирования из коллекции для последующего использования с операциями группировки и сворачивания, используя заданную функцию keySelector для извлечения ключа из каждого элемента.
fun <T, K> Iterable<T>.groupingBy( keySelector: (T) -> K ): Grouping<T, K>
ifEmpty
Возвращает этот массив, если он не пуст, или результат вызова функции defaultValue, если массив пуст.
fun <C, R> C.ifEmpty( defaultValue: () -> R ): R where C : Array<*>, C : R
indexOf
Возвращает первый индекс элемента, или -1, если список не содержит элемент.
fun <T> List<T>.indexOf(element: T): Int
Возвращает первый индекс элемента, или -1, если коллекция не содержит элемент.
fun <T> Iterable<T>.indexOf(element: T): Int
indexOfFirst
Возвращает индекс первого элемента, удовлетворяющего заданному предикату, или -1, если в списке нет такого элемента.
fun <T> List<T>.indexOfFirst(predicate: (T) -> Boolean): Int
Возвращает индекс первого элемента, удовлетворяющего заданному предикату, или -1, если в коллекции нет такого элемента.
fun <T> Iterable<T>.indexOfFirst( predicate: (T) -> Boolean ): Int
indexOfLast
Возвращает индекс последнего элемента, удовлетворяющего заданному предикату, или -1, если в списке нет такого элемента.
fun <T> List<T>.indexOfLast(predicate: (T) -> Boolean): Int
Возвращает индекс последнего элемента, удовлетворяющего заданному предикату, или -1, если в коллекции нет такого элемента.
fun <T> Iterable<T>.indexOfLast( predicate: (T) -> Boolean ): Int
intersect
Возвращает множество, содержащее все элементы, которые содержатся как в этой коллекции, так и в указанной коллекции.
infix fun <T> Iterable<T>.intersect( other: Iterable<T> ): Set<T>
isNotEmpty
Возвращает true если коллекция не пуста.
fun <T> Collection<T>.isNotEmpty(): Boolean
isNullOrEmpty
Возвращает true если эта nullable коллекция равна null или пуста.
fun <T> Collection<T>?.isNullOrEmpty(): Boolean
joinTo
Добавляет строку из всех элементов, разделенных с помощью разделителя, и с использованием заданного префикса и постфикса, если они заданы.
fun <T, A : Appendable> Iterable<T>.joinTo( buffer: A, separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "...", transform: ((T) -> CharSequence)? = null ): A
joinToString
Создаёт строку из всех элементов, разделенных с помощью разделителя и с использованием заданных префикса и постфикса, если они указаны.
fun <T> Iterable<T>.joinToString( separator: CharSequence = ", ", prefix: CharSequence = "", postfix: CharSequence = "", limit: Int = -1, truncated: CharSequence = "...", transform: ((T) -> CharSequence)? = null ): String
last
Возвращает последний элемент.
fun <T> List<T>.last(): T
Возвращает последний элемент, соответствующий заданному предикату.
fun <T> List<T>.last(predicate: (T) -> Boolean): T
fun <T> Iterable<T>.last(predicate: (T) -> Boolean): T
lastIndexOf
Возвращает последний индекс элемента, или -1, если список не содержит элемента.
fun <T> List<T>.lastIndexOf(element: T): Int
Возвращает последний индекс элемента, или -1, если коллекция не содержит элемента.
fun <T> Iterable<T>.lastIndexOf(element: T): Int
lastOrNull
Возвращает последний элемент, или null если список пустой.
fun <T> List<T>.lastOrNull(): T?
Возвращает последний элемент, соответствующий заданному предикату, или null если такой элемент не был найден.
fun <T> List<T>.lastOrNull(predicate: (T) -> Boolean): T?
fun <T> Iterable<T>.lastOrNull(predicate: (T) -> Boolean): T?
map
Возвращает список, содержащий результаты применения заданной функции transform к каждому элементу в исходной коллекции.
fun <T, R> Iterable<T>.map(transform: (T) -> R): List<R>
mapIndexed
Возвращает список, содержащий результаты применения заданной функции transform к каждому элементу и его индексу в исходной коллекции.
fun <T, R> Iterable<T>.mapIndexed( transform: (index: Int, T) -> R ): List<R>
mapIndexedNotNull
Возвращает список, содержащий только не-null результаты применения заданной функции transform к каждому элементу и его индексу в исходной коллекции.
fun <T, R : Any> Iterable<T>.mapIndexedNotNull( transform: (index: Int, T) -> R? ): List<R>
mapIndexedNotNullTo
Применяет заданную функцию transform к каждому элементу и его индексу в исходной коллекции и добавляет только не-null результаты в заданный destination.
fun <T, R : Any, C : MutableCollection<in R>> Iterable<T>.mapIndexedNotNullTo( destination: C, transform: (index: Int, T) -> R? ): C
mapIndexedTo
Применяет заданную функцию transform к каждому элементу и его индексу в исходной коллекции и добавляет результаты в заданный destination.
fun <T, R, C : MutableCollection<in R>> Iterable<T>.mapIndexedTo( destination: C, transform: (index: Int, T) -> R ): C
mapNotNull
Возвращает список, содержащий только не-null результаты применения заданной функции transform к каждому элементу в исходной коллекции.
fun <T, R : Any> Iterable<T>.mapNotNull( transform: (T) -> R? ): List<R>
mapNotNullTo
Применяет заданную функцию transform к каждому элементу в исходной коллекции и добавляет только не-null результаты в заданный destination.
fun <T, R : Any, C : MutableCollection<in R>> Iterable<T>.mapNotNullTo( destination: C, transform: (T) -> R? ): C
mapTo
Применяет заданную функцию transform к каждому элементу исходной коллекции и добавляет результаты в заданный destination.
fun <T, R, C : MutableCollection<in R>> Iterable<T>.mapTo( destination: C, transform: (T) -> R ): C
maxBy
fun <T, R : Comparable<R>> Iterable<T>.maxBy( selector: (T) -> R ): T?
maxByOrNull
Возвращает первый элемент, дающий наибольшее значение заданной функции, или null если элементов нет.
fun <T, R : Comparable<R>> Iterable<T>.maxByOrNull( selector: (T) -> R ): T?
maxOf
Возвращает наибольшее значение среди всех значений, полученных с помощью функции selector, примененной к каждому элементу в коллекции.
fun <T> Iterable<T>.maxOf(selector: (T) -> Double): Double
fun <T> Iterable<T>.maxOf(selector: (T) -> Float): Float
fun <T, R : Comparable<R>> Iterable<T>.maxOf( selector: (T) -> R ): R
maxOfOrNull
Возвращает наибольшее значение среди всех значений, полученных с помощью функции selector, примененной к каждому элементу в коллекции, или null если элементов нет.
fun <T> Iterable<T>.maxOfOrNull( selector: (T) -> Double ): Double?
fun <T> Iterable<T>.maxOfOrNull( selector: (T) -> Float ): Float?
fun <T, R : Comparable<R>> Iterable<T>.maxOfOrNull( selector: (T) -> R ): R?
maxOfWith
Возвращает наибольшее значение в соответствии с предоставленным comparator среди всех значений, полученных с помощью функции selector, примененной к каждому элементу коллекции.
fun <T, R> Iterable<T>.maxOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
maxOfWithOrNull
Возвращает наибольшее значение в соответствии с предоставленным comparator среди всех значений, полученных с помощью функции selector, примененной к каждому элементу коллекции, или null если элементов нет.
fun <T, R> Iterable<T>.maxOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
maxWith
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T?
maxWithOrNull
Возвращает первый элемент, имеющий наибольшее значение в соответствии с предоставленным comparator, или null если элементов нет.
fun <T> Iterable<T>.maxWithOrNull( comparator: Comparator<in T> ): T?
minBy
fun <T, R : Comparable<R>> Iterable<T>.minBy( selector: (T) -> R ): T?
minByOrNull
Возвращает первый элемент, дающий наименьшее значение заданной функции, или null если элементов нет.
fun <T, R : Comparable<R>> Iterable<T>.minByOrNull( selector: (T) -> R ): T?
minOf
Возвращает наименьшее значение среди всех значений, полученных с помощью функции selector, примененной к каждому элементу коллекции.
fun <T> Iterable<T>.minOf(selector: (T) -> Double): Double
fun <T> Iterable<T>.minOf(selector: (T) -> Float): Float
fun <T, R : Comparable<R>> Iterable<T>.minOf( selector: (T) -> R ): R
minOfOrNull
Возвращает наименьшее значение среди всех значений, полученных с помощью функции selector, примененной к каждому элементу коллекции, или null если элементов нет.
fun <T> Iterable<T>.minOfOrNull( selector: (T) -> Double ): Double?
fun <T> Iterable<T>.minOfOrNull( selector: (T) -> Float ): Float?
fun <T, R : Comparable<R>> Iterable<T>.minOfOrNull( selector: (T) -> R ): R?
minOfWith
Возвращает наименьшее значение в соответствии с предоставленным comparator среди всех значений, полученных с помощью функции selector, примененной к каждому элементу коллекции.
fun <T, R> Iterable<T>.minOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
minOfWithOrNull
Возвращает наименьшее значение в соответствии с предоставленным comparator среди всех значений, полученных с помощью функции selector, примененной к каждому элементу коллекции, или null если элементов нет.
fun <T, R> Iterable<T>.minOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
minus
Возвращает список, содержащий все элементы исходной коллекции без первого вхождения данного element.
operator fun <T> Iterable<T>.minus(element: T): List<T>
Возвращает список, содержащий все элементы исходной коллекции, за исключением элементов, содержащихся в данном массиве elements.
operator fun <T> Iterable<T>.minus( elements: Array<out T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, за исключением элементов, содержащихся в данной коллекции elements.
operator fun <T> Iterable<T>.minus( elements: Iterable<T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, за исключением элементов, содержащихся в данной последовательности elements.
operator fun <T> Iterable<T>.minus( elements: Sequence<T> ): List<T>
minusElement
Возвращает список, содержащий все элементы исходного набора без первого вхождения заданного элемента.
fun <T> Iterable<T>.minusElement(element: T): List<T>
minWith
fun <T> Iterable<T>.minWith(comparator: Comparator<in T>): T?
minWithOrNull
Возвращает первый элемент с наименьшим значением в соответствии с предоставленным компаратором или null если элементов нет.
fun <T> Iterable<T>.minWithOrNull( comparator: Comparator<in T> ): T?
none
Возвращает true если набор не содержит элементов.
fun <T> Iterable<T>.none(): Boolean
Возвращает true если ни один элемент не соответствует заданному предикату.
fun <T> Iterable<T>.none(predicate: (T) -> Boolean): Boolean
onEach
Выполняет заданное действие над каждым элементом и возвращает сам набор после этого.
fun <T, C : Iterable<T>> C.onEach(action: (T) -> Unit): C
onEachIndexed
Выполняет заданное действие над каждым элементом, предоставляя последовательный индекс с элементом, и возвращает сам набор после этого.
fun <T, C : Iterable<T>> C.onEachIndexed( action: (index: Int, T) -> Unit ): C
orEmpty
Возвращает этот список, если он не null и пустой список в противном случае.
fun <T> List<T>?.orEmpty(): List<T>
partition
plus
Возвращает список, содержащий все элементы исходного набора, а затем заданный элемент.
operator fun <T> Iterable<T>.plus(element: T): List<T>
operator fun <T> Collection<T>.plus(element: T): List<T>
Возвращает список, содержащий все элементы исходного набора, а затем все элементы заданного массива элементов.
operator fun <T> Iterable<T>.plus( elements: Array<out T> ): List<T>
operator fun <T> Collection<T>.plus( elements: Array<out T> ): List<T>
Возвращает список, содержащий все элементы исходного набора, а затем все элементы заданного набора элементов.
operator fun <T> Iterable<T>.plus( elements: Iterable<T> ): List<T>
operator fun <T> Collection<T>.plus( elements: Iterable<T> ): List<T>
Возвращает список, содержащий все элементы исходного набора, а затем все элементы заданной последовательности элементов.
operator fun <T> Iterable<T>.plus( elements: Sequence<T> ): List<T>
operator fun <T> Collection<T>.plus( elements: Sequence<T> ): List<T>
plusElement
Возвращает список, содержащий все элементы исходного набора и затем заданный элемент.
fun <T> Iterable<T>.plusElement(element: T): List<T>
fun <T> Collection<T>.plusElement(element: T): List<T>
random
Возвращает случайный элемент из этого набора.
fun <T> Collection<T>.random(): T
Возвращает случайный элемент из этого набора, используя указанный источник случайности.
fun <T> Collection<T>.random(random: Random): T
randomOrNull
Возвращает случайный элемент из этого набора или null если этот набор пуст.
fun <T> Collection<T>.randomOrNull(): T?
Возвращает случайный элемент из этого набора, используя указанный источник случайности, или null если этот набор пуст.
fun <T> Collection<T>.randomOrNull(random: Random): T?
reduce
Накапливает значение, начиная с первого элемента и применяя операцию слева направо к текущему значению аккумулятора и каждому элементу.
fun <S, T : S> Iterable<T>.reduce( operation: (acc: S, T) -> S ): S
reduceIndexed
Накапливает значение, начиная с первого элемента и применяя операцию слева направо к текущему значению аккумулятора и каждому элементу с его индексом в исходном наборе.
fun <S, T : S> Iterable<T>.reduceIndexed( operation: (index: Int, acc: S, T) -> S ): S
reduceIndexedOrNull
Накапливает значение, начиная с первого элемента и применяя операцию слева направо к текущему значению аккумулятора и каждому элементу с его индексом в исходном наборе.
fun <S, T : S> Iterable<T>.reduceIndexedOrNull( operation: (index: Int, acc: S, T) -> S ): S?
reduceOrNull
Накапливает значение, начиная с первого элемента и применяя операцию слева направо к текущему значению аккумулятора и каждому элементу.
fun <S, T : S> Iterable<T>.reduceOrNull( operation: (acc: S, T) -> S ): S?
reduceRight
Накапливает значение, начиная с последнего элемента и применяя операцию справа налево к каждому элементу и текущему значению аккумулятора.
fun <S, T : S> List<T>.reduceRight( operation: (T, acc: S) -> S ): S
reduceRightIndexed
Накапливает значение, начиная с последнего элемента и применяя операцию справа налево к каждому элементу с его индексом в исходном списке и текущему значению аккумулятора.
fun <S, T : S> List<T>.reduceRightIndexed( operation: (index: Int, T, acc: S) -> S ): S
reduceRightIndexedOrNull
Накапливает значение, начиная с последнего элемента и применяя операцию справа налево к каждому элементу с его индексом в исходном списке и текущему значению аккумулятора.
fun <S, T : S> List<T>.reduceRightIndexedOrNull( operation: (index: Int, T, acc: S) -> S ): S?
reduceRightOrNull
Накапливает значение, начиная с последнего элемента и применяя операцию справа налево к каждому элементу и текущему значению аккумулятора.
fun <S, T : S> List<T>.reduceRightOrNull( operation: (T, acc: S) -> S ): S?
requireNoNulls
Возвращает исходный набор, содержащий все элементы, которые не являются null, вызывая IllegalArgumentException, если есть какие-либо null элементы.
fun <T : Any> List<T?>.requireNoNulls(): List<T>
reversed
Возвращает список с элементами в обратном порядке.
fun <T> Iterable<T>.reversed(): List<T>
runningFold
Возвращает список, содержащий последовательные значения накопления, сгенерированные путем применения операции слева направо к каждому элементу и текущему значению аккумулятора, которое начинается со значения initial.
fun <T, R> Iterable<T>.runningFold( initial: R, operation: (acc: R, T) -> R ): List<R>
runningFoldIndexed
Возвращает список, содержащий последовательные значения накопления, сгенерированные путем применения операции слева направо к каждому элементу, его индексу в исходном наборе и текущему значению аккумулятора, которое начинается со значения initial.
fun <T, R> Iterable<T>.runningFoldIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
runningReduce
Возвращает список, содержащий последовательные значения накопления, полученные путём применения operation слева направо к каждому элементу и текущему значению накопителя, начиная с первого элемента этого списка.
fun <S, T : S> Iterable<T>.runningReduce( operation: (acc: S, T) -> S ): List<S>
runningReduceIndexed
Возвращает список, содержащий последовательные значения накопления, полученные путём применения operation слева направо к каждому элементу, его индексу в исходном списке и текущему значению накопителя, начиная с первого элемента этого списка.
fun <S, T : S> Iterable<T>.runningReduceIndexed( operation: (index: Int, acc: S, T) -> S ): List<S>
scan
scanIndexed
Возвращает список, содержащий последовательные значения накопления, полученные путём применения operation слева направо к каждому элементу, его индексу в исходном списке и текущему значению накопителя, начиная со значения initial.
fun <T, R> Iterable<T>.scanIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
shuffled
Возвращает новый список с элементами этого списка, перемешанными случайным образом, используя указанный random экземпляр в качестве источника случайности.
fun <T> Iterable<T>.shuffled(random: Random): List<T>
fun <T> Iterable<T>.shuffled(random: Random): List<T>
single
Возвращает единственный элемент или выбросит исключение, если список пуст или содержит более одного элемента.
fun <T> List<T>.single(): T
Возвращает единственный элемент, удовлетворяющий заданному predicate, или выбросит исключение, если соответствующих элементов нет или их больше одного.
fun <T> Iterable<T>.single(predicate: (T) -> Boolean): T
singleOrNull
Возвращает единственный элемент, или null, если список пуст или содержит более одного элемента.
fun <T> List<T>.singleOrNull(): T?
Возвращает единственный элемент, удовлетворяющий заданному predicate, или null, если элемент не найден или найдено более одного элемента.
fun <T> Iterable<T>.singleOrNull( predicate: (T) -> Boolean ): T?
slice
Возвращает список, содержащий элементы по индексам в указанном диапазоне индексов.
fun <T> List<T>.slice(indices: IntRange): List<T>
Возвращает список, содержащий элементы по указанным индексам.
fun <T> List<T>.slice(indices: Iterable<Int>): List<T>
sortedBy
Возвращает список всех элементов, отсортированных по естественному порядку значений, возвращаемых заданной функцией selector.
fun <T, R : Comparable<R>> Iterable<T>.sortedBy( selector: (T) -> R? ): List<T>
sortedByDescending
Возвращает список всех элементов, отсортированных по убыванию в соответствии с естественным порядком значений, возвращаемых заданной функцией selector.
fun <T, R : Comparable<R>> Iterable<T>.sortedByDescending( selector: (T) -> R? ): List<T>
sortedWith
Возвращает список всех элементов, отсортированных в соответствии с указанным comparator.
fun <T> Iterable<T>.sortedWith( comparator: Comparator<in T> ): List<T>
subtract
Возвращает множество, содержащее все элементы, которые содержатся в этом списке и не содержатся в указанном списке.
infix fun <T> Iterable<T>.subtract( other: Iterable<T> ): Set<T>
sumBy
Возвращает сумму всех значений, полученных функцией selector, применённой к каждому элементу коллекции.
fun <T> Iterable<T>.sumBy(selector: (T) -> Int): Int
sumByDouble
Возвращает сумму всех значений, полученных функцией selector, применённой к каждому элементу коллекции.
fun <T> Iterable<T>.sumByDouble( selector: (T) -> Double ): Double
sumOf
Возвращает сумму всех значений, полученных функцией selector, применённой к каждому элементу коллекции.
fun <T> Iterable<T>.sumOf(selector: (T) -> Double): Double
fun <T> Iterable<T>.sumOf(selector: (T) -> Int): Int
fun <T> Iterable<T>.sumOf(selector: (T) -> Long): Long
fun <T> Iterable<T>.sumOf(selector: (T) -> UInt): UInt
fun <T> Iterable<T>.sumOf(selector: (T) -> ULong): ULong
fun <T> Iterable<T>.sumOf( selector: (T) -> BigDecimal ): BigDecimal
fun <T> Iterable<T>.sumOf( selector: (T) -> BigInteger ): BigInteger
take
Возвращает список, содержащий первые n элементов.
fun <T> Iterable<T>.take(n: Int): List<T>
takeLast
Возвращает список, содержащий последние n элементов.
fun <T> List<T>.takeLast(n: Int): List<T>
takeLastWhile
Возвращает список, содержащий последние элементы, удовлетворяющие заданному предикату.
fun <T> List<T>.takeLastWhile( predicate: (T) -> Boolean ): List<T>
takeWhile
Возвращает список, содержащий первые элементы, удовлетворяющие заданному предикату.
fun <T> Iterable<T>.takeWhile( predicate: (T) -> Boolean ): List<T>
toBooleanArray
Возвращает массив Boolean, содержащий все элементы этой коллекции.
fun Collection<Boolean>.toBooleanArray(): BooleanArray
toByteArray
Возвращает массив Byte, содержащий все элементы этой коллекции.
fun Collection<Byte>.toByteArray(): ByteArray
toCharArray
Возвращает массив Char, содержащий все элементы этой коллекции.
fun Collection<Char>.toCharArray(): CharArray
toCollection
Добавляет все элементы в заданную коллекцию destination.
fun <T, C : MutableCollection<in T>> Iterable<T>.toCollection( destination: C ): C
toCStringArray
Преобразует этот список строк Kotlin в массив C-строк C, выделяя память для массива и C-строк с заданным AutofreeScope.
fun List<String>.toCStringArray( autofreeScope: AutofreeScope ): CPointer<CPointerVar<ByteVar>>
toCValues
fun <T : CPointed> List<CPointer<T>?>.toCValues(): CValues<CPointerVar<T>>
toDoubleArray
Возвращает массив Double, содержащий все элементы этой коллекции.
fun Collection<Double>.toDoubleArray(): DoubleArray
toFloatArray
Возвращает массив Float, содержащий все элементы этой коллекции.
fun Collection<Float>.toFloatArray(): FloatArray
toHashSet
Возвращает новый HashSet всех элементов.
fun <T> Iterable<T>.toHashSet(): HashSet<T>
toIntArray
Возвращает массив Int, содержащий все элементы этой коллекции.
fun Collection<Int>.toIntArray(): IntArray
toList
Возвращает List, содержащий все элементы.
fun <T> Iterable<T>.toList(): List<T>
toLongArray
Возвращает массив Long, содержащий все элементы этой коллекции.
fun Collection<Long>.toLongArray(): LongArray
toMap
Возвращает новую карту, содержащую все пары ключ-значение из данной коллекции пар.
fun <K, V> Iterable<Pair<K, V>>.toMap(): Map<K, V>
Заполняет и возвращает изменяемую карту destination парами ключ-значение из данной коллекции пар.
fun <K, V, M : MutableMap<in K, in V>> Iterable<Pair<K, V>>.toMap( destination: M ): M
toMutableSet
Возвращает новый MutableSet, содержащий все различные элементы из данной коллекции.
fun <T> Iterable<T>.toMutableSet(): MutableSet<T>
toSet
Возвращает Set всех элементов.
fun <T> Iterable<T>.toSet(): Set<T>
toShortArray
Возвращает массив Short, содержащий все элементы этой коллекции.
fun Collection<Short>.toShortArray(): ShortArray
toSortedSet
Возвращает новый SortedSet всех элементов.
fun <T> Iterable<T>.toSortedSet( comparator: Comparator<in T> ): SortedSet<T>
toUByteArray
Возвращает массив UByte, содержащий все элементы этой коллекции.
fun Collection<UByte>.toUByteArray(): UByteArray
toUIntArray
Возвращает массив UInt, содержащий все элементы этой коллекции.
fun Collection<UInt>.toUIntArray(): UIntArray
toULongArray
Возвращает массив ULong, содержащий все элементы этой коллекции.
fun Collection<ULong>.toULongArray(): ULongArray
toUShortArray
Возвращает массив UShort, содержащий все элементы этой коллекции.
fun Collection<UShort>.toUShortArray(): UShortArray
union
Возвращает множество, содержащее все различные элементы из обеих коллекций.
infix fun <T> Iterable<T>.union(other: Iterable<T>): Set<T>
unzip
Возвращает пару списков, где первый список построен из первых значений каждой пары из этой коллекции, второй список построен из вторых значений каждой пары из этой коллекции.
fun <T, R> Iterable<Pair<T, R>>.unzip(): Pair<List<T>, List<R>>
waitForMultipleFutures
fun <T> Collection<Future<T>>.waitForMultipleFutures( millis: Int ): Set<Future<T>>
windowed
Возвращает список снимков окна заданного size, скользящего по этой коллекции с заданным step, где каждый снимок представляет собой список.
fun <T> Iterable<T>.windowed( size: Int, step: Int = 1, partialWindows: Boolean = false ): List<List<T>>
Возвращает список результатов применения заданной функции transform к каждому списку, представляющему собой представление окна заданного size, скользящего по этой коллекции с заданным step.
fun <T, R> Iterable<T>.windowed( size: Int, step: Int = 1, partialWindows: Boolean = false, transform: (List<T>) -> R ): List<R>
withIndex
Возвращает ленивый Iterable, который оборачивает каждый элемент исходной коллекции в IndexedValue, содержащий индекс этого элемента и сам элемент.
fun <T> Iterable<T>.withIndex(): Iterable<IndexedValue<T>>
zip
Возвращает список пар, составленных из элементов коллекции this и массива other с тем же индексом. Возвращаемый список имеет длину самого короткого из них.
infix fun <T, R> Iterable<T>.zip( other: Array<out R> ): List<Pair<T, R>>
Возвращает список значений, составленных из элементов коллекции this и массива other с тем же индексом, используя предоставленную функцию transform, примененную к каждой паре элементов. Возвращаемый список имеет длину самого короткого из них.
fun <T, R, V> Iterable<T>.zip( other: Array<out R>, transform: (a: T, b: R) -> V ): List<V>
Возвращает список пар, составленных из элементов коллекции this и коллекции other с тем же индексом. Возвращаемый список имеет длину самого короткого из них.
infix fun <T, R> Iterable<T>.zip( other: Iterable<R> ): List<Pair<T, R>>
Возвращает список значений, составленных из элементов коллекции this и коллекции other с тем же индексом, используя предоставленную функцию transform, примененную к каждой паре элементов. Возвращаемый список имеет длину самого короткого из них.
fun <T, R, V> Iterable<T>.zip( other: Iterable<R>, transform: (a: T, b: R) -> V ): List<V>
zipWithNext
Возвращает список пар из двух соседних элементов в этой коллекции.
fun <T> Iterable<T>.zipWithNext(): List<Pair<T, T>>
Возвращает список, содержащий результаты применения заданной функции transform к каждой паре двух соседних элементов в этой коллекции.
fun <T, R> Iterable<T>.zipWithNext( transform: (a: T, b: T) -> R ): List<R>
Наследники
AbstractList
Предоставляет скелетное реализацию интерфейса List для чтения.
abstract class AbstractList<out E> : AbstractCollection<E>, List<E>
MutableList
Обобщённый упорядоченный набор элементов, поддерживающий добавление и удаление элементов.
interface MutableList<E> : List<E>, MutableCollection<E>
© 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/-list/index.html