flatMap

Common
JVM
JS
Native
1.0
inline fun <T, R> Array<out T>.flatMap(
    transform: (T) -> Iterable<R>
): List<R>
inline fun <R> ByteArray.flatMap(
    transform: (Byte) -> Iterable<R>
): List<R>
inline fun <R> ShortArray.flatMap(
    transform: (Short) -> Iterable<R>
): List<R>
inline fun <R> IntArray.flatMap(
    transform: (Int) -> Iterable<R>
): List<R>
inline fun <R> LongArray.flatMap(
    transform: (Long) -> Iterable<R>
): List<R>
inline fun <R> FloatArray.flatMap(
    transform: (Float) -> Iterable<R>
): List<R>
inline fun <R> DoubleArray.flatMap(
    transform: (Double) -> Iterable<R>
): List<R>
inline fun <R> BooleanArray.flatMap(
    transform: (Boolean) -> Iterable<R>
): List<R>
inline fun <R> CharArray.flatMap(
    transform: (Char) -> Iterable<R>
): List<R>
@JvmName("flatMapSequence") inline fun <T, R> Array<out T>.flatMap(
    transform: (T) -> Sequence<R>
): List<R>
@ExperimentalUnsignedTypes inline fun <R> UIntArray.flatMap(
    transform: (UInt) -> Iterable<R>
): List<R>
@ExperimentalUnsignedTypes inline fun <R> ULongArray.flatMap(
    transform: (ULong) -> Iterable<R>
): List<R>
@ExperimentalUnsignedTypes inline fun <R> UByteArray.flatMap(
    transform: (UByte) -> Iterable<R>
): List<R>
@ExperimentalUnsignedTypes inline fun <R> UShortArray.flatMap(
    transform: (UShort) -> Iterable<R>
): List<R>

Returns a single list of all elements yielded from results of transform function being invoked on each element of original array.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val list = listOf("123", "45")
println(list.flatMap { it.toList() }) // [1, 2, 3, 4, 5]
//sampleEnd
}
Common
JVM
JS
Native
1.0
inline fun <T, R> Iterable<T>.flatMap(
    transform: (T) -> Iterable<R>
): List<R>
@JvmName("flatMapSequence") inline fun <T, R> Iterable<T>.flatMap(
    transform: (T) -> Sequence<R>
): List<R>

Returns a single list of all elements yielded from results of transform function being invoked on each element of original collection.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val list = listOf("123", "45")
println(list.flatMap { it.toList() }) // [1, 2, 3, 4, 5]
//sampleEnd
}
Common
JVM
JS
Native
1.0
inline fun <K, V, R> Map<out K, V>.flatMap(
    transform: (Entry<K, V>) -> Iterable<R>
): List<R>

Returns a single list of all elements yielded from results of transform function being invoked on each entry of original map.

import kotlin.test.*
import java.util.*

fun main(args: Array<String>) {
//sampleStart
val map = mapOf("122" to 2, "3455" to 3)
println(map.flatMap { (key, value) -> key.take(value).toList() }) // [1, 2, 3, 4, 5]
//sampleEnd
}
Common
JVM
JS
Native
1.4
@JvmName("flatMapSequence") inline fun <K, V, R> Map<out K, V>.flatMap(
    transform: (Entry<K, V>) -> Sequence<R>
): List<R>

Returns a single list of all elements yielded from results of transform function being invoked on each entry of original map.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val list = listOf("123", "45")
println(list.flatMap { it.toList() }) // [1, 2, 3, 4, 5]
//sampleEnd
}