zip
Начиная с Kotlin: 1.0
infix fun <T, R> Sequence<T>.zip(other: Sequence<R>): Sequence<Pair<T, R>>
Возвращает последовательность значений, созданных из элементов последовательности this и последовательности другая с тем же индексом. Результирующая последовательность заканчивается, как только заканчивается самая короткая входная последовательность.
Операция является промежуточной и без сохранения состояния.
Примеры
import kotlin.test.*
fun main() {
//sampleStart
val sequenceA = ('a'..'z').asSequence()
val sequenceB = generateSequence(1) { it * 2 + 1 }
println((sequenceA zip sequenceB).take(4).toList()) // [(a, 1), (b, 3), (c, 7), (d, 15)]
//sampleEnd
}
fun <T, R, V> Sequence<T>.zip(other: Sequence<R>, transform: (a: T, b: R) -> V): Sequence<V>
Возвращает последовательность значений, созданных из элементов последовательности this и последовательности другая с тем же индексом с помощью функции преобразования, применяемой к каждой паре элементов. Результирующая последовательность заканчивается, как только заканчивается самая короткая входная последовательность.
Операция является промежуточной и без сохранения состояния.
Примеры
import kotlin.test.*
fun main() {
//sampleStart
val sequenceA = ('a'..'z').asSequence()
val sequenceB = generateSequence(1) { it * 2 + 1 }
val result = sequenceA.zip(sequenceB) { a, b -> "$a/$b" }
println(result.take(4).toList()) // [a/1, b/3, c/7, d/15]
//sampleEnd
}
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.sequences/zip.html