distinctBy所在位置是kotlin.sequences.distinctBy,其相關用法介紹如下。

用法:

fun <T, K> Sequence<T>.distinctBy(
    selector: (T) -> K
): Sequence<T>

返回一個序列,該序列僅包含給定序列中的元素,這些元素具有給定 selector 函數返回的不同鍵。

在給定序列的具有相同鍵的元素中,隻有第一個元素會出現在結果序列中。結果序列中的元素與它們在源序列中的順序相同。

操作是 intermediatestateful

例子:

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.uppercaseChar() }) // [a, b]
//sampleEnd
}

輸出:

[a, A, b, B]
[a, b]