如何删除重复从一个 Array<String?>在科特林?
Array<String?>
使用 distinct扩展功能:
distinct
val a = arrayOf("a", "a", "b", "c", "c") val b = a.distinct() // ["a", "b", "c"]
还有 distinctBy功能允许指定如何区分项目:
distinctBy
val a = listOf("a", "b", "ab", "ba", "abc") val b = a.distinctBy { it.length } // ["a", "ab", "abc"]
正如 @ mfulton26所建议的那样,你也可以使用 toSet、 toMutableSet,如果你不需要保留原来的顺序,还可以使用 toHashSet。这些函数产生一个 Set而不是 List,应该比 distinct更有效一点。
toSet
toMutableSet
toHashSet
Set
List
你可能会发现有用的东西: