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

如何删除重复从一个 Array<String?>在科特林?

93494 次浏览

使用 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更有效一点。


你可能会发现有用的东西: