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

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

    使用distinct扩展功能 :

     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库中可用?