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
Заполняет и возвращает изменяемый 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
Заполняет и возвращает изменяемую карту назначения парами «ключ-значение» для каждого элемента заданного набора, где ключ — сам элемент, а значение — результат применения функции valueSelector к этому ключу.
fun <K, V, M : MutableMap<in K, in V>> Iterable<K>.associateWithTo( destination: M, valueSelector: (K) -> V ): M
average
Возвращает среднее значение элементов в наборе.
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
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>
contains
Возвращает true , если элемент element найден в наборе.
operator fun <T> Iterable<T>.contains(element: T): Boolean
count
Возвращает количество элементов в этом наборе.
fun <T> Iterable<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>
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?
firstOrNull
Возвращает первый элемент или null если коллекция пустая.
fun <T> Iterable<T>.firstOrNull(): T?
Возвращает первый элемент, соответствующий заданному
fun <T> Iterable<T>.firstOrNull(
predicate: (T) -> Boolean
): T?
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
Накапливает значение, начиная со значения начального и применяя операцию операции слева направо к текущему значению аккумулятора и каждому элементу.
fun <T, R> Iterable<T>.fold( initial: R, operation: (acc: R, T) -> R ): R
foldIndexed
Накапливает значение, начиная со значения начального и применяя операцию операции слева направо к текущему значению аккумулятора и каждому элементу с его индексом в исходной коллекции.
fun <T, R> Iterable<T>.foldIndexed( initial: R, operation: (index: Int, acc: R, T) -> R ): R
forEach
Выполняет заданное действие для каждого элемента.
fun <T> Iterable<T>.forEach(action: (T) -> Unit)
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
последний
Возвращает последний элемент.
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?
преобразовать
Возвращает список, содержащий результаты применения заданной функции преобразования к каждому элементу в исходной коллекции.
fun <T, R> Iterable<T>.map(transform: (T) -> R): List<R>
преобразовать с индексом
Возвращает список, содержащий результаты применения заданной функции преобразования к каждому элементу и его индексу в исходной коллекции.
fun <T, R> Iterable<T>.mapIndexed( transform: (index: Int, T) -> R ): List<R>
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?
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?
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
Возвращает список, содержащий все элементы исходной коллекции, а затем заданный элемент.
operator fun <T> Iterable<T>.plus(element: T): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданного массива элементов.
operator fun <T> Iterable<T>.plus( elements: Array<out T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданной коллекции элементов.
operator fun <T> Iterable<T>.plus( elements: Iterable<T> ): List<T>
Возвращает список, содержащий все элементы исходной коллекции, а затем все элементы заданной последовательности элементов.
operator fun <T> Iterable<T>.plus( elements: Sequence<T> ): List<T>
plusElement
Возвращает список, содержащий все элементы исходной коллекции, а затем заданный элемент.
fun <T> Iterable<T>.plusElement(element: T): List<T>
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>
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> 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
Возвращает список всех элементов, отсортированных по естественному порядку сортировки значения, возвращаемого указанной функцией 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>
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
суммаПо
Возвращает сумму всех значений, полученных от функции-селектора, применённой к каждому элементу в коллекции.
fun <T> Iterable<T>.sumBy(selector: (T) -> Int): Int
суммаПоДвойному
Возвращает сумму всех значений, полученных от функции-селектора, применённой к каждому элементу в коллекции.
fun <T> Iterable<T>.sumByDouble( selector: (T) -> Double ): Double
суммаПо
Возвращает сумму всех значений, полученных от функции-селектора, применённой к каждому элементу в коллекции.
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>
вКоллекцию
Добавляет все элементы в заданную коллекцию назначения.
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>
Заполняет и возвращает изменяемую карту назначения парами ключ-значение из заданной коллекции пар.
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 с тем же индексом с использованием предоставленной функции преобразования, применённой к каждой паре элементов. Возвращаемый список имеет длину наименьшей коллекции.
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 с тем же индексом с использованием предоставленной функции преобразования, применённой к каждой паре элементов. Возвращаемый список имеет длину наименьшей коллекции.
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–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/-iterable/index.html