Iterable
interface Iterable<out T>
Классы, которые наследуют от этого интерфейса, могут быть представлены как последовательность элементов, по которым можно выполнить итерацию.
Параметры
T - тип элемента, по которому выполняется итерация. Итератор ковариантен по типу элемента.
Функции
iterator
Возвращает итератор по элементам этого объекта.
abstract operator fun iterator(): Iterator<T>
Расширяющие функции
все
Возвращает 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
Заполняет и возвращает изменяемую карту назначения парами ключ-значение для каждого элемента заданного набора, где ключ — сам элемент, а значение — результат применения функции выбора значения к этому ключу.
fun <K, V, M : MutableMap<in K, in V>> Iterable<K>.associateWithTo( destination: M, valueSelector: (K) -> V ): M
среднее значение
Возвращает среднее значение элементов в наборе.
fun Iterable<Byte>.average(): Double
fun Iterable<Short>.average(): Double
fun Iterable<Int>.average(): Double
fun Iterable<Long>.average(): Double
fun Iterable<Float>.average(): Double
fun Iterable<Double>.average(): Double
разделение на куски
Разделяет этот набор на список списков, каждый из которых не превышает заданного размера.
fun <T> Iterable<T>.chunked(size: Int): List<List<T>>
Разделяет этот набор на несколько списков, каждый из которых не превышает заданного размера и применяет заданную функцию преобразования к каждому из них.
fun <T, R> Iterable<T>.chunked( size: Int, transform: (List<T>) -> R ): List<R>
содержит
Возвращает true, если элемент element найден в наборе.
operator fun <T> Iterable<T>.contains(element: T): Boolean
количество
Возвращает количество элементов в этом наборе.
fun <T> Iterable<T>.count(): Int
Возвращает количество элементов, соответствующих заданному условию.
fun <T> Iterable<T>.count(predicate: (T) -> Boolean): Int
уникальные
Возвращает список, содержащий только уникальные элементы из заданного набора.
fun <T> Iterable<T>.distinct(): List<T>
уникальные по
Возвращает список, содержащий только элементы из заданного набора с уникальными ключами, возвращаемыми заданной функцией выбора.
fun <T, K> Iterable<T>.distinctBy( selector: (T) -> K ): List<T>
исключить первые
Возвращает список, содержащий все элементы, кроме первых n элементов.
fun <T> Iterable<T>.drop(n: Int): List<T>
исключить пока
Возвращает список, содержащий все элементы, кроме первых элементов, которые удовлетворяют заданному условию.
fun <T> Iterable<T>.dropWhile( predicate: (T) -> Boolean ): List<T>
элемент по индексу
Возвращает элемент по заданному индексу, или генерирует исключение IndexOutOfBoundsException, если индекс выходит за пределы набора.
fun <T> Iterable<T>.elementAt(index: Int): T
элемент по индексу или значение по умолчанию
Возвращает элемент по заданному индексу или результат вызова функции значения по умолчанию, если индекс выходит за пределы набора.
fun <T> Iterable<T>.elementAtOrElse( index: Int, defaultValue: (Int) -> T ): T
элемент по индексу или null
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
Возвращает первое ненулевое значение, полученное функцией transform, применённой к элементам этого набора в порядке итерации, или генерирует исключение NoSuchElementException, если не было получено ни одного ненулевого значения.
fun <T, R : Any> Iterable<T>.firstNotNullOf( transform: (T) -> R? ): R
firstNotNullOfOrNull
Возвращает первое ненулевое значение, полученное функцией transform, применённой к элементам этого набора в порядке итерации, или 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>
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
Создает строку из всех элементов, разделенных с помощью 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> Iterable<T>.last(): T
Возвращает последний элемент, соответствующий заданному predicate.
fun <T> Iterable<T>.last(predicate: (T) -> Boolean): T
lastIndexOf
Возвращает последний индекс element, или -1, если коллекция не содержит элемент.
fun <T> Iterable<T>.lastIndexOf(element: T): Int
lastOrNull
Возвращает последний элемент, или null если коллекция пуста.
fun <T> Iterable<T>.lastOrNull(): T?
Возвращает последний элемент, соответствующий заданному predicate, или null если такой элемент не найден.
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 к каждому элементу исходного набора и добавляет результаты в заданный назначенный набор.
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
Возвращает наибольшее значение согласно заданному компаратору среди всех значений, полученных функцией selector, примененной к каждому элементу в наборе.
fun <T, R> Iterable<T>.maxOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
maxOfWithOrNull
Возвращает наибольшее значение согласно заданному компаратору среди всех значений, полученных функцией selector, примененной к каждому элементу в наборе, или null , если элементов нет.
fun <T, R> Iterable<T>.maxOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
maxOrNull
Возвращает наибольший элемент или null , если элементов нет.
fun Iterable<Double>.maxOrNull(): Double?
fun Iterable<Float>.maxOrNull(): Float?
fun <T : Comparable<T>> Iterable<T>.maxOrNull(): T?
maxWith
Возвращает первый элемент с наибольшим значением согласно заданному компаратору.
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T
fun <T> Iterable<T>.maxWith(comparator: Comparator<in T>): T?
maxWithOrNull
Возвращает первый элемент с наибольшим значением согласно заданному компаратору, или 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
Возвращает наименьшее значение по предоставленному компаратору среди всех значений, полученных с помощью функции выбора, применённой к каждому элементу в коллекции.
fun <T, R> Iterable<T>.minOfWith( comparator: Comparator<in R>, selector: (T) -> R ): R
minOfWithOrNull
Возвращает наименьшее значение по предоставленному компаратору среди всех значений, полученных с помощью функции выбора, применённой к каждому элементу в коллекции, или null если элементов нет.
fun <T, R> Iterable<T>.minOfWithOrNull( comparator: Comparator<in R>, selector: (T) -> R ): R?
minOrNull
Возвращает наименьший элемент или null если элементов нет.
fun Iterable<Double>.minOrNull(): Double?
fun Iterable<Float>.minOrNull(): Float?
fun <T : Comparable<T>> Iterable<T>.minOrNull(): T?
minus
Возвращает список, содержащий все элементы исходной коллекции без первого вхождения заданного элемента.
operator fun <T> Iterable<T>.minus(element: T): List<T>
Возвращает список, содержащий все элементы исходной коллекции, за исключением элементов, содержащихся в заданном массиве элементов.
operator fun <T> Iterable<T>.minus( elements: Array<out T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, за исключением элементов, содержащихся в заданной коллекции элементов.
operator fun <T> Iterable<T>.minus( elements: Iterable<T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, за исключением элементов, содержащихся в заданной последовательности элементов.
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
partition
plus
Возвращает список, содержащий все элементы исходной коллекции, а затем заданный element.
operator fun <T> Iterable<T>.plus(element: T): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданного массива elements.
operator fun <T> Iterable<T>.plus( elements: Array<out T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданной коллекции elements.
operator fun <T> Iterable<T>.plus( elements: Iterable<T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданной последовательности elements.
operator fun <T> Iterable<T>.plus( elements: Sequence<T> ): List<T>
plusElement
Возвращает список, содержащий все элементы исходной коллекции, а затем заданный element.
fun <T> Iterable<T>.plusElement(element: T): List<T>
reduce
Накапливает значение, начиная с первого элемента и применяя operation слева направо к текущему значению накопителя и каждому элементу.
fun <S, T : S> Iterable<T>.reduce( operation: (acc: S, T) -> S ): S
reduceIndexed
Накапливает значение, начиная с первого элемента и применяя operation слева направо к текущему значению накопителя и каждому элементу с его индексом в исходной коллекции.
fun <S, T : S> Iterable<T>.reduceIndexed( operation: (index: Int, acc: S, T) -> S ): S
reduceIndexedOrNull
Накапливает значение, начиная с первого элемента и применяя operation слева направо к текущему значению накопителя и каждому элементу с его индексом в исходной коллекции.
fun <S, T : S> Iterable<T>.reduceIndexedOrNull( operation: (index: Int, acc: S, T) -> S ): S?
reduceOrNull
Накапливает значение, начиная с первого элемента и применяя operation слева направо к текущему значению накопителя и каждому элементу.
fun <S, T : S> Iterable<T>.reduceOrNull( operation: (acc: S, T) -> S ): S?
requireNoNulls
Возвращает исходную коллекцию, содержащую все не-null элементы, выбрасывая IllegalArgumentException, если есть какие-либо null элементы.
fun <T : Any> Iterable<T?>.requireNoNulls(): Iterable<T>
reversed
Возвращает список с элементами в обратном порядке.
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
Возвращает список, содержащий последовательные значения накопления, генерируемые применением операции слева направо к каждому элементу и текущему значению накопителя, начиная с первого элемента этого набора.
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
Возвращает список, содержащий последовательные значения накопления, генерируемые применением операции слева направо к каждому элементу и текущему значению накопителя, начиная со значения начального.
fun <T, R> Iterable<T>.scan( initial: R, operation: (acc: R, T) -> R ): List<R>
scanIndexed
Возвращает список, содержащий последовательные значения накопления, генерируемые применением операции слева направо к каждому элементу, его индексу в исходном наборе и текущему значению накопителя, начиная со значения начального.
fun <T, R> Iterable<T>.scanIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): List<R>
shuffled
Возвращает новый список с элементами, перемешанными случайным образом, используя указанный источник случайности.
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
Возвращает единственный элемент, соответствующий заданному предикату, или выбрасывает исключение, если такого элемента нет или их несколько.
fun <T> Iterable<T>.single(predicate: (T) -> Boolean): T
singleOrNull
Возвращает единственный элемент или null, если набор пуст или содержит более одного элемента.
fun <T> Iterable<T>.singleOrNull(): T?
Возвращает единственный элемент, соответствующий заданному предикату, или null, если элемент не найден или найдено более одного элемента.
fun <T> Iterable<T>.singleOrNull( predicate: (T) -> Boolean ): T?
sorted
Возвращает список всех элементов, отсортированных по их естественному порядку сортировки.
fun <T : Comparable<T>> Iterable<T>.sorted(): 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>
sortedDescending
Возвращает список всех элементов, отсортированных по убыванию в соответствии с их естественным порядком сортировки.
fun <T : Comparable<T>> Iterable<T>.sortedDescending(): 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>
сумма
Возвращает сумму всех элементов в коллекции.
fun Iterable<Byte>.sum(): Int
fun Iterable<Short>.sum(): Int
fun Iterable<Int>.sum(): Int
fun Iterable<Long>.sum(): Long
fun Iterable<Float>.sum(): Float
fun Iterable<Double>.sum(): Double
fun Iterable<UInt>.sum(): UInt
fun Iterable<ULong>.sum(): ULong
fun Iterable<UByte>.sum(): UInt
fun Iterable<UShort>.sum(): UInt
суммаПо
Возвращает сумму всех значений, полученных с помощью функции selector, применённой к каждому элементу в коллекции.
fun <T> Iterable<T>.sumBy(selector: (T) -> Int): Int
суммаПоДвойному
Возвращает сумму всех значений, полученных с помощью функции selector, применённой к каждому элементу в коллекции.
fun <T> Iterable<T>.sumByDouble( selector: (T) -> Double ): Double
суммаИз
Возвращает сумму всех значений, полученных с помощью функции 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
взять
Возвращает список, содержащий первые n элементов.
fun <T> Iterable<T>.take(n: Int): List<T>
взятьПока
Возвращает список, содержащий первые элементы, удовлетворяющие заданному предикату.
fun <T> Iterable<T>.takeWhile( predicate: (T) -> Boolean ): List<T>
в коллекцию
Добавляет все элементы в заданную коллекцию destination.
fun <T, C : MutableCollection<in T>> Iterable<T>.toCollection( destination: C ): C
в множествоХэш
Возвращает новое множество HashSet всех элементов.
fun <T> Iterable<T>.toHashSet(): HashSet<T>
в список
Возвращает список, содержащий все элементы.
fun <T> Iterable<T>.toList(): List<T>
в карту
Возвращает новую карту, содержащую все пары ключ-значение из заданной коллекции пар.
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
в изменяемый список
Возвращает новый изменяемый список, заполненный всеми элементами этой коллекции.
fun <T> Iterable<T>.toMutableList(): MutableList<T>
в изменяемое множество
Возвращает новое изменяемое множество, содержащее все уникальные элементы из заданной коллекции.
fun <T> Iterable<T>.toMutableSet(): MutableSet<T>
в множество
Возвращает множество всех элементов.
fun <T> Iterable<T>.toSet(): Set<T>
в отсортированное множество
Возвращает новое отсортированное множество всех элементов.
fun <T : Comparable<T>> Iterable<T>.toSortedSet(): SortedSet<T>
fun <T> Iterable<T>.toSortedSet( comparator: Comparator<in T> ): SortedSet<T>
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>>
windowed
Возвращает список снимков окна заданного размера, скользящего по этой коллекции с заданным шагом, где каждый снимок является списком.
fun <T> Iterable<T>.windowed( size: Int, step: Int = 1, partialWindows: Boolean = false ): List<List<T>>
Возвращает список результатов применения заданной функции преобразования к каждому списку, представляющему фрагмент окна заданного размера, скользящего по этой коллекции с заданным шагом.
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>>
Возвращает список, содержащий результаты применения заданной функции преобразования к каждой паре двух смежных элементов в этой коллекции.
fun <T, R> Iterable<T>.zipWithNext( transform: (a: T, b: T) -> R ): List<R>
Наследники
CharProgression
Последовательность значений типа Char.
open class CharProgression : Iterable<Char>
Collection
Обобщенное множество элементов. Методы в этом интерфейсе поддерживают только чтение коллекции; чтение/запись поддерживается через интерфейс MutableCollection.
interface Collection<out E> : Iterable<E>
IntProgression
Последовательность значений типа Int.
open class IntProgression : Iterable<Int>
LongProgression
Последовательность значений типа Long.
open class LongProgression : Iterable<Long>
MutableIterable
Классы, наследующие от этого интерфейса, могут быть представлены как последовательность элементов, по которым можно перебирать и которые поддерживают удаление элементов во время итерации.
interface MutableIterable<out T> : Iterable<T>
UIntProgression
Последовательность значений типа UInt.
open class UIntProgression : Iterable<UInt>
ULongProgression
Последовательность значений типа ULong.
open class ULongProgression : Iterable<ULong>
© 2010–2023 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/-iterable/