Kotlin – 从数组中删除重复的字符串的习惯方法?

如何从kotlin中的Array中删除重复项?

使用distinct扩展function :

 val a = arrayOf("a", "a", "b", "c", "c") val b = a.distinct() // ["a", "b", "c"] 

还有distinctBy函数 ,可以指定如何区分项目:

 val a = listOf("a", "b", "ab", "ba", "abc") val b = a.distinctBy { it.length } // ["a", "ab", "abc"] 

正如@ mfulton26所建议的,你也可以使用toSettoMutableSet ,如果你不需要保留原来的顺序,可以使用toHashSet 。 这些函数产生一个Set而不是List ,应该比distinct更有效一些。


你可能会发现有用的:

  • Kotlin成语
  • 什么Java 8 Stream.collect等价物在标准Kotlin库中可用?