Kotlin distinct用法及代码示例

本文方法及代码示例基于Kotlin 2.1.20 Released

distinct 所在包 kotlin.collections.distinct,其相关用法介绍如下:

用法一

kotlin 复制代码
fun <T> Array<out T>.distinct(): List<T>

返回仅包含给定数组中不同元素的列表。

在给定数组的相等元素中,只有第一个元素会出现在结果列表中。结果列表中的元素与它们在源数组中的顺序相同。

用法二

kotlin 复制代码
fun ByteArray.distinct(): List<Byte>

fun ShortArray.distinct(): List<Short>

fun IntArray.distinct(): List<Int>

fun LongArray.distinct(): List<Long>

fun FloatArray.distinct(): List<Float>

fun DoubleArray.distinct(): List<Double>

fun BooleanArray.distinct(): List<Boolean>

fun CharArray.distinct(): List<Char>

返回仅包含给定数组中不同元素的列表。

结果列表中的元素与它们在源数组中的顺序相同。

用法三

kotlin 复制代码
fun <T> Iterable<T>.distinct(): List<T>

返回仅包含给定集合中不同元素的列表。

在给定集合的相同元素中,只有第一个元素会出现在结果列表中。结果列表中的元素与它们在源集合中的顺序相同。

示例代码:

kotlin 复制代码
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 
}
相关推荐
程序员码歌19 分钟前
别再让 AI 自由发挥了:OpenSpec 才是团队协作不跑偏的关键
android·前端·人工智能
敲代码的鱼34 分钟前
NFC读卡能力 支持安卓/iOS/鸿蒙 UTS插件
android·ios·uni-app
刮风那天1 小时前
Android 常驻进程如何被查杀?
android
刮风那天2 小时前
Android 如何降低进程优先级可以被查杀?
android
逐光老顽童3 小时前
Kotlin协程详解与现代Android开发实践
kotlin
资源分享助手4 小时前
超级改图P图改字无限制版教程(安卓)AI改图软件、图片改字软件、安卓修图APP、智能消除工具、图片拼接APP、超级改图下载
android·人工智能
plainGeekDev4 小时前
Kotlin 常见坑速查:object/lateinit/return 那些容易踩的坑
kotlin
plainGeekDev4 小时前
Android 高级岗 Kotlin 面试题:这些答不上来,基本告别大厂了
kotlin
Lehjy4 小时前
【Linux】文件系统磁盘存储结构
android·linux·运维
plainGeekDev5 小时前
Kotlin 泛型与扩展:out/in 搞不懂?扩展函数到底扩展了啥?
kotlin