Список
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>
Расширяемые свойства
индексы
Возвращает диапазон допустимых индексов для этой коллекции.
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
Заполняет и возвращает изменяемый map парами ключ-значение, где ключ предоставляется функцией keySelector, применённой к каждому элементу заданной коллекции, а значением является сам элемент.
fun <T, K, M : MutableMap<in K, in T>> Iterable<T>.associateByTo( destination: M, keySelector: (T) -> K ): M
Заполняет и возвращает изменяемый map парами ключ-значение, где ключ предоставляется функцией 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
associateWith
Возвращает Map, где ключами являются элементы из заданной коллекции, а значения производятся функцией valueSelector, применённой к каждому элементу.
fun <K, V> Iterable<K>.associateWith( valueSelector: (K) -> V ): Map<K, V>
associateWithTo
Заполняет и возвращает изменяемую карту назначения парами ключ-значение для каждого элемента заданного набора, где ключ — сам элемент, а значение предоставляется функцией выбора значения, применённой к этому ключу.
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
count
Возвращает количество элементов, соответствующих заданному предикату.
fun <T> Iterable<T>.count(predicate: (T) -> Boolean): Int
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
firstOrNull
Возвращает первый элемент, или null , если список пуст.
fun <T> List<T>.firstOrNull(): T?
Возвращает первый элемент, соответствующий заданному предикату, или null , если элемент не был найден.
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
Возвращает один список всех элементов, полученных в результате вызова функции transform для каждого элемента и его индекса в исходной коллекции.
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
Добавляет все элементы, полученные в результате вызова функции transform для каждого элемента и его индекса в исходной коллекции, в указанный destination.
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
Добавляет все элементы, полученные в результате вызова функции transform для каждого элемента исходной коллекции, в указанный destination.
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
foldIndexed
foldRight
foldRightIndexed
forEach
Выполняет заданное action для каждого элемента.
fun <T> Iterable<T>.forEach(action: (T) -> Unit)
forEachIndexed
Выполняет заданное action для каждого элемента, предоставляя последовательный индекс с элементом.
fun <T> Iterable<T>.forEachIndexed( action: (index: Int, T) -> Unit)
getOrElse
Возвращает элемент с заданным index или результат вызова функции defaultValue, если index находится за пределами этого списка.
fun <T> List<T>.getOrElse( index: Int, defaultValue: (Int) -> T ): T
getOrNull
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, применённой к каждому элементу, и помещает в карту destination каждый ключ группы, связанный со списком соответствующих элементов.
fun <T, K, M : MutableMap<in K, MutableList<T>>> Iterable<T>.groupByTo( destination: M, keySelector: (T) -> K ): M
Группирует значения, возвращаемые функцией valueTransform, применённой к каждому элементу исходного набора, по ключу, возвращаемому заданной функцией keySelector, применённой к элементу, и помещает в карту destination каждый ключ группы, связанный со списком соответствующих значений.
fun <T, K, V, M : MutableMap<in K, MutableList<V>>> Iterable<T>.groupByTo( destination: M, keySelector: (T) -> K, valueTransform: (T) -> V ): M
groupingBy
Создаёт источник Grouping из набора для последующего использования с операциями группировки и сворачивания с помощью указанной функции 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 если эта допускающая значение NULL коллекция является NULL или пустой.
fun <T> Collection<T>?.isNullOrEmpty(): Boolean
joinTo
Добавляет строку из всех элементов, разделенных с помощью separator и используя заданные prefix и postfix, если указаны.
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
Создает строку из всех элементов, разделенных с помощью separator и используя заданные prefix и postfix, если указаны.
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
Возвращает последний элемент, соответствующий заданному predicate.
fun <T> List<T>.last(predicate: (T) -> Boolean): T
fun <T> Iterable<T>.last(predicate: (T) -> Boolean): T
lastIndexOf
Возвращает последний индекс element, или -1, если список не содержит element.
fun <T> List<T>.lastIndexOf(element: T): Int
Возвращает последний индекс element, или -1, если коллекция не содержит element.
fun <T> Iterable<T>.lastIndexOf(element: T): Int
lastOrNull
Возвращает последний элемент, или null если список пуст.
fun <T> List<T>.lastOrNull(): T?
Возвращает последний элемент, соответствующий заданному predicate, или 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
Возвращает список, содержащий только ненулевые результаты применения заданной функции transform к каждому элементу и его индексу в исходной коллекции.
fun <T, R : Any> Iterable<T>.mapIndexedNotNull( transform: (index: Int, T) -> R? ): List<R>
mapIndexedNotNullTo
Применяет заданную функцию transform к каждому элементу и его индексу в исходной коллекции и добавляет только ненулевые результаты в заданный 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
Возвращает список, содержащий только ненулевые результаты применения заданной функции transform к каждому элементу в исходной коллекции.
fun <T, R : Any> Iterable<T>.mapNotNull( transform: (T) -> R? ): List<R>
mapNotNullTo
Применяет заданную функцию transform к каждому элементу в исходной коллекции и добавляет только ненулевые результаты в заданный 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
Возвращает наименьшее значение согласно предоставленному компаратору среди всех значений, полученных функцией selector, применённой к каждому элементу в коллекции.
fun <T, R> Iterable<T>.minOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
minOfWithOrNull
Возвращает наименьшее значение согласно предоставленному компаратору среди всех значений, полученных функцией selector, применённой к каждому элементу в коллекции, или null если элементов нет.
fun <T, R> Iterable<T>.minOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
minus
Возвращает список, содержащий все элементы исходной коллекции без первого вхождения заданного элемента.
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?
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
runningFoldIndexed
Возвращает список, содержащий последовательные значения накопления, полученные путём применения операции слева направо к каждому элементу, его индексу в исходной коллекции и текущему накопленному значению, которое начинается со значения initial.
fun <T, R> Iterable<T>.runningFoldIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
runningReduce
Возвращает список, содержащий последовательные значения накопления, полученные путём применения операции слева направо к каждому элементу и текущему накопленному значению, которое начинается с первого элемента этой коллекции.
fun <S, T : S> Iterable<T>.runningReduce( operation: (acc: S, T) -> S ): List<S>
runningReduceIndexed
Возвращает список, содержащий последовательные значения накопления, полученные путём применения операции слева направо к каждому элементу, его индексу в исходной коллекции и текущему накопленному значению, которое начинается с первого элемента этой коллекции.
fun <S, T : S> Iterable<T>.runningReduceIndexed( operation: (index: Int, acc: S, T) -> S ): List<S>
scan
scanIndexed
Возвращает список, содержащий последовательные накопленные значения, полученные путем применения operation слева направо к каждому элементу, его индексу в исходном списке и текущему значению накопителя, которое начинается со значения начального значения.
fun <T, R> Iterable<T>.scanIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
scanReduce
fun <S, T : S> Iterable<T>.scanReduce( operation: (acc: S, T) -> S ): List<S>
scanReduceIndexed
fun <S, T : S> Iterable<T>.scanReduceIndexed( operation: (index: Int, acc: S, T) -> S ): List<S>
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
Возвращает единственный элемент, удовлетворяющий заданному предикату, или вызывает исключение, если нет или больше одного соответствующего элемента.
fun <T> Iterable<T>.single(predicate: (T) -> Boolean): T
singleOrNull
Возвращает единственный элемент, или null если список пуст или содержит более одного элемента.
fun <T> List<T>.singleOrNull(): T?
Возвращает единственный элемент, удовлетворяющий заданному предикату, или 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
Возвращает список всех элементов, отсортированных по естественному порядку сортировки значения, возвращаемого указанной функцией выбора.
fun <T, R : Comparable<R>> Iterable<T>.sortedBy( selector: (T) -> R? ): List<T>
sortedByDescending
Возвращает список всех элементов, отсортированных по убыванию в соответствии с естественным порядком сортировки значения, возвращаемого указанной функцией выбора.
fun <T, R : Comparable<R>> Iterable<T>.sortedByDescending( selector: (T) -> R? ): List<T>
sortedWith
Возвращает список всех элементов, отсортированных в соответствии с указанным компаратором.
fun <T> Iterable<T>.sortedWith( comparator: Comparator<in T> ): List<T>
subtract
Возвращает множество, содержащее все элементы, которые содержатся в этом наборе, но не содержатся в указанном наборе.
infix fun <T> Iterable<T>.subtract( other: Iterable<T> ): Set<T>
sumBy
Возвращает сумму всех значений, полученных применением функции выбора к каждому элементу в списке.
fun <T> Iterable<T>.sumBy(selector: (T) -> Int): Int
sumByDouble
Возвращает сумму всех значений, полученных применением функции выбора к каждому элементу в списке.
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–2020 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