algorithm kotlin

algorithm - Kotlin: ¿forma idiomática de eliminar cadenas duplicadas de la matriz?



(1)

Use la función de extensión distinct :

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

También hay distinctBy función distinctBy que permite especificar cómo distinguir los elementos:

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

Como sugirió @mfulton26 , también puede usar toSet , toMutableSet y, si no necesita preservar el pedido original, toHashSet . Estas funciones producen un Set lugar de una List y deberían ser un poco más eficientes que distinct .

Puede que te resulte útil:

¿Cómo eliminar duplicados de una Array<String?> En kotlin?