许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  从Kotlin数组中删除重复项的方法

从Kotlin数组中删除重复项的方法

阅读数 8
点赞 0
article_banner

在这篇文章中,我们将 学习 如何在 Kotlin 中从数组中删除重复项。由于在 Kotlin 中有很多方法可以从数组中删除重复项,因此我们可以根据用例决定使用哪一种。

我们可以使用以下任何 函数 从 Kotlin 中的数组中删除重复项:

  • distinct()
  • toSet()
  • toMutableSet()
  • toHashSet()

让我们开始一个一个例子来学习。

考虑如下data 类  Mentor:

data class Mentor(val id: Int, val name: String)

并且, array 一个Mentor:

val mentors = arrayOf(
    Mentor(1, "Amit Shekhar"),
    Mentor(2, "Anand Gaurav"),
    Mentor(1, "Amit Shekhar"),
    Mentor(3, "Lionel Messi"))

使用删除重复项distinct()

在 Kotlin 中,我们可以使用distinct()Collection 函数中可用的函数来删除重复项。

val distinct = mentors.distinct()
println(distinct)

这将打印以下内容:

[Mentor(id=1, name=Amit Shekhar),
Mentor(id=2, name=Anand Gaurav),
Mentor(id=3, name=Lionel Messi)]

笔记

  • 保持物品的原始顺序。
  • 在给定数组的相等元素中,只有第一个元素会出现在输出中。
  • 返回List

在这里,正如我们使用它从数组中删除重复的导师一样,我们可以使用它从数组中删除重复的字符串。

使用删除重复项toSet()

在 Kotlin 中,我们可以使用toSet()Collection 函数中可用的函数来删除重复项。

val toSet = mentors.toSet()
println(toSet)

这将打印以下内容:

[Mentor(id=1, name=Amit Shekhar),
Mentor(id=2, name=Anand Gaurav),
Mentor(id=3, name=Lionel Messi)]

笔记:

  • 保持物品的原始顺序。
  • 返回Set这是一个read-only集合。这意味着我们不能像add在集合上那样执行操作。接下来,我们将查看toMutableSet()哪些返回read/write集。

使用删除重复项toMutableSet()

在 Kotlin 中,我们可以使用toMutableSet()Collection 函数中可用的函数来删除重复项。

val toMutableSet = mentors.toMutableSet()
println(toMutableSet)

这将打印以下内容:

[Mentor(id=1, name=Amit Shekhar),
Mentor(id=2, name=Anand Gaurav),
Mentor(id=3, name=Lionel Messi)]

笔记:

  • 保持物品的原始顺序。
  • 返回MutableSet这是一个read/write集合。这意味着我们可以像add对可变集执行操作。

使用删除重复项toHashSet()

在 Kotlin 中,我们可以使用toHashSet()Collection 函数中可用的函数来删除重复项。

val toHashSet = mentors.toHashSet()
println(toHashSet)

这将打印以下内容:

[Mentor(id=3, name=Lionel Messi),
Mentor(id=1, name=Amit Shekhar),
Mentor(id=2, name=Anand Gaurav)]

笔记:

  • 类似于MutableSet但不保持项目的原始顺序。
  • 返回HashSet

在这里,正如我们使用它从数组中删除重复的导师一样,我们可以使用它从数组中删除任何重复的元素,如字符串、数字等。

因此,我们了解了如何在 Kotlin 中从数组中删除重复项。

现在就是这样。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空