fun <T, R : Any> Sequence<T>.mapNotNull( transform: (T) -> R? ): Sequence<R>
Returns a sequence containing only the non-null results of applying the given transform function to each element in the original sequence.
The operation is intermediate and stateless.
import kotlin.test.*
fun main(args: Array<String>) {
//sampleStart
val strings: List<String> = listOf("12a", "45", "", "3")
val ints: List<Int> = strings.mapNotNull { it.toIntOrNull() }
println(ints) // [45, 3]
println(ints.sum()) // 48
//sampleEnd
}
© 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.sequences/map-not-null.html