W3cubDocs

/Kotlin

distinctBy

Platform and version requirements: JVM (1.0), JS (1.0), Native (1.0)
fun <T, K> Sequence<T>.distinctBy(
    selector: (T) -> K
): Sequence<T>

Returns a sequence containing only elements from the given sequence having distinct keys returned by the given selector function.

Among elements of the given sequence with equal keys, only the first one will be present in the resulting sequence. The elements in the resulting sequence are in the same order as they were in the source sequence.

The operation is intermediate and stateful.

import kotlin.test.*

fun main(args: Array<String>) {
//sampleStart
val list = listOf('a', 'A', 'b', 'B', 'A', 'a')
println(list.distinct()) // [a, A, b, B]
println(list.distinctBy { it.toUpperCase() }) // [a, b]
//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/distinct-by.html