unzip

Common
JVM
JS
Native
1.0
fun <T, R> Sequence<Pair<T, R>>.unzip(): Pair<List<T>, List<R>>
(source)

Returns a pair of lists, where first list is built from the first values of each pair from this sequence, second list is built from the second values of each pair from this sequence.

The operation is terminal.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val result = generateSequence(0 to 1) { it.first + 1 to it.second * 2 }.take(8).unzip()

println(result.first.toList()) // [0, 1, 2, 3, 4, 5, 6, 7]
println(result.second.toList()) // [1, 2, 4, 8, 16, 32, 64, 128]
//sampleEnd
}