Коллекция
interface Collection<out E> : Iterable<E>
Обобщенная коллекция элементов. Методы в этом интерфейсе поддерживают только чтение коллекции; чтение и запись поддерживаются через интерфейс MutableCollection.
Параметры
E - тип элементов, содержащихся в коллекции. Коллекция ковариантна по типу элемента.
Свойства
size
Возвращает размер коллекции.
abstract val size: Int
Функции
contains
Проверяет, содержит ли эта коллекция указанный элемент.
abstract operator fun contains(element: E): Boolean
containsAll
Проверяет, содержат ли все элементы указанной коллекции элементы этой коллекции.
abstract fun containsAll(elements: Collection<E>): Boolean
isEmpty
Возвращает true, если коллекция пуста (не содержит элементов), false в противном случае.
abstract fun isEmpty(): Boolean
iterator
Возвращает итератор по элементам этого объекта.
abstract fun iterator(): Iterator<E>
Расширяемые свойства
Расширяемые функции
все
Возвращает 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>
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
Заполняет и возвращает изменяемую карту destination парами «ключ-значение» для каждого элемента заданного набора, где ключ — сам элемент, а значение — результат применения функции valueSelector к этому ключу.
fun <K, V, M : MutableMap<in K, in V>> Iterable<K>.associateWithTo( destination: M, valueSelector: (K) -> V ): M
chunked
Разделяет этот набор на список списков, каждый из которых не превышает заданного размера.
fun <T> Iterable<T>.chunked(size: Int): List<List<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> Collection<T>.count(): Int
Возвращает количество элементов, удовлетворяющих заданному предикату.
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>
dropWhile
Возвращает список, содержащий все элементы, кроме первых элементов, удовлетворяющих заданному предикату.
fun <T> Iterable<T>.dropWhile( predicate: (T) -> Boolean ): List<T>
elementAt
Возвращает элемент по заданному индексу или выбрасывает исключение IndexOutOfBoundsException, если индекс находится вне границ этого набора.
fun <T> Iterable<T>.elementAt(index: Int): T
elementAtOrElse
Возвращает элемент по заданному индексу или результат вызова функции 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?
firstNotNullOf
Возвращает первое не-null значение, произведённое функцией transform, применяемой к элементам этого набора в порядке итерации, или выбрасывает исключение NoSuchElementException, если не было произведено ни одного не-null значения.
fun <T, R : Any> Iterable<T>.firstNotNullOf( transform: (T) -> R? ): R
firstNotNullOfOrNull
Возвращает первое не-null значение, произведённое функцией transform, применяемой к элементам этого набора в порядке итерации, или null, если не было произведено ни одного не-null значения.
null firstOrNull
Возвращает первый элемент, или null, если набор пустой.
null Возвращает первый элемент, соответствующий заданному предикату, или null, если элемент не найден.
null flatMap
Возвращает единственный список всех элементов, полученных из результатов функции transform, вызываемой для каждого элемента исходного набора.
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, вызываемой для каждого элемента и его индекса в исходном наборе, в заданное назначение.
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, вызываемой для каждого элемента исходного набора, в заданное назначение.
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
forEachIndexed
Выполняет заданное действие для каждого элемента, предоставляя порядковый индекс с элементом.
fun <T> Iterable<T>.forEachIndexed( action: (index: Int, T) -> Unit)
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>
indexOf
Возвращает первый индекс элемента или -1, если коллекция не содержит элемента.
fun <T> Iterable<T>.indexOf(element: T): Int
indexOfFirst
Возвращает индекс первого элемента, соответствующего заданному предикату, или -1, если коллекция не содержит такого элемента.
fun <T> Iterable<T>.indexOfFirst( predicate: (T) -> Boolean ): Int
indexOfLast
Возвращает индекс последнего элемента, соответствующего заданному предикату, или -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
Добавляет строку из всех элементов, разделенных с помощью разделителя, используя заданный префикс и постфикс, если они указаны.
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> Iterable<T>.last(): T
Возвращает последний элемент, соответствующий заданному предикату.
fun <T> Iterable<T>.last(predicate: (T) -> Boolean): T
lastIndexOf
Возвращает последний индекс элемента, или -1, если в коллекции нет этого элемента.
fun <T> Iterable<T>.lastIndexOf(element: T): Int
lastOrNull
Возвращает последний элемент, или null если коллекция пустая.
fun <T> Iterable<T>.lastOrNull(): T?
Возвращает последний элемент, соответствующий заданному предикату, или null если такой элемент не найден.
fun <T> Iterable<T>.lastOrNull(predicate: (T) -> Boolean): T?
map
Возвращает список, содержащий результаты применения заданной функции преобразования к каждому элементу в исходной коллекции.
fun <T, R> Iterable<T>.map(transform: (T) -> R): List<R>
mapIndexed
Возвращает список, содержащий результаты применения заданной функции преобразования к каждому элементу и его индексу в исходной коллекции.
fun <T, R> Iterable<T>.mapIndexed( transform: (index: Int, T) -> R ): List<R>
mapIndexedNotNull
Возвращает список, содержащий только результаты, не равные null, от применения заданной функции преобразования к каждому элементу и его индексу в исходной коллекции.
fun <T, R : Any> Iterable<T>.mapIndexedNotNull( transform: (index: Int, T) -> R? ): List<R>
mapIndexedNotNullTo
Применяет заданную функцию преобразования к каждому элементу и его индексу в исходной коллекции и добавляет только результаты, не равные null, в заданное назначение.
fun <T, R : Any, C : MutableCollection<in R>> Iterable<T>.mapIndexedNotNullTo( destination: C, transform: (index: Int, T) -> R? ): C
mapIndexedTo
Применяет заданную функцию преобразования к каждому элементу и его индексу в исходной коллекции и добавляет результаты в заданное назначение.
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 к каждому элементу в исходной коллекции и добавляет только результаты, не равные 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
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
Возвращает первый элемент, имеющий наибольшее значение согласно предоставленному comparator.
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T?
maxWithOrNull
Возвращает первый элемент, имеющий наибольшее значение согласно предоставленному comparator, или null если элементов нет.
fun <T> Iterable<T>.maxWithOrNull( comparator: Comparator<in T> ): 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
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> Collection<T>?.orEmpty(): Collection<T>
разделение
плюс
Возвращает список, содержащий все элементы исходной коллекции, а затем заданный элемент.
operator fun <T> Collection<T>.plus(element: T): List<T>
operator fun <T> Iterable<T>.plus(element: T): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданного массива элементов.
operator fun <T> Collection<T>.plus( elements: Array<out T> ): List<T>
operator fun <T> Iterable<T>.plus( elements: Array<out T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданной коллекции элементов.
operator fun <T> Collection<T>.plus( elements: Iterable<T> ): List<T>
operator fun <T> Iterable<T>.plus( elements: Iterable<T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданной последовательности элементов.
operator fun <T> Collection<T>.plus( elements: Sequence<T> ): List<T>
operator fun <T> Iterable<T>.plus( elements: Sequence<T> ): List<T>
плюсЭлемент
Возвращает список, содержащий все элементы исходной коллекции, а затем заданный элемент.
fun <T> Collection<T>.plusElement(element: T): List<T>
fun <T> Iterable<T>.plusElement(element: T): List<T>
случайный
Возвращает случайный элемент из этой коллекции.
fun <T> Collection<T>.random(): T
Возвращает случайный элемент из этой коллекции, используя указанный источник случайности.
fun <T> Collection<T>.random(random: Random): T
случайныйИлиNull
Возвращает случайный элемент из этой коллекции или 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?
требоватьОтсутствияNull
Возвращает исходную коллекцию, содержащую все элементы, не являющиеся null, выбрасывая IllegalArgumentException, если есть какие-либо null элементы.
fun <T : Any> Iterable<T?>.requireNoNulls(): Iterable<T>
обратный
Возвращает список с элементами в обратном порядке.
fun <T> Iterable<T>.reversed(): List<T>
runningFold
runningFoldIndexed
Возвращает список, содержащий последовательные значения накопления, генерируемые применением operation слева направо к каждому элементу, его индексу в исходном наборе и текущему значению аккумулятора, которое начинается со значения 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> Iterable<T>.single(): T
Возвращает единственный элемент, соответствующий заданному predicate, или вызывает исключение, если соответствующего элемента нет или их больше одного.
fun <T> Iterable<T>.single(predicate: (T) -> Boolean): T
singleOrNull
Возвращает единственный элемент, или null, если набор пустой или содержит более одного элемента.
fun <T> Iterable<T>.singleOrNull(): T?
Возвращает единственный элемент, соответствующий заданному predicate, или null, если элемент не найден или найдено более одного элемента.
fun <T> Iterable<T>.singleOrNull( predicate: (T) -> Boolean ): 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>
takeWhile
Возвращает список, содержащий первые элементы, удовлетворяющие указанному predicate.
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
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
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
toMutableList
Возвращает новый MutableList, заполненный всеми элементами этой коллекции.
fun <T> Collection<T>.toMutableList(): MutableList<T>
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>
Наследующие классы
AbstractCollection
Предоставляет скелетное реализацию интерфейса только для чтения Collection.
abstract class AbstractCollection<out E> : Collection<E>
List
Обобщенная упорядоченная коллекция элементов. Методы в этом интерфейсе поддерживают только чтение списка; чтение/запись поддерживаются через интерфейс MutableList.
interface List<out E> : Collection<E>
MatchGroupCollection
Представляет коллекцию захваченных групп в одном соответствии с регулярным выражением.
interface MatchGroupCollection : Collection<MatchGroup?>
MutableCollection
Обобщенная коллекция элементов, которая поддерживает добавление и удаление элементов.
interface MutableCollection<E> : Collection<E>, MutableIterable<E>
Set
Обобщенная неупорядоченная коллекция элементов, которая не поддерживает дубликаты элементов. Методы в этом интерфейсе поддерживают только чтение множества; чтение/запись поддерживаются через интерфейс MutableSet.
interface Set<out E> : Collection<E>
UByteArray
class UByteArray : Collection<UByte>
UIntArray
class UIntArray : Collection<UInt>
ULongArray
class ULongArray : Collection<ULong>
UShortArray
class UShortArray : Collection<UShort>
© 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/-collection/index.html