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]