[algorithm] Kotlin-배열에서 중복 문자열을 제거하는 관용적 방법?
Array<String?>
kotlin 에서 중복을 제거하는 방법 은 무엇입니까?
답변
사용 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 제안, 당신은 또한 사용할 수 있습니다 toSet
, toMutableSet
당신이 보존 될 수있는 원래의 순서가 필요하지 않은 경우, 그리고 toHashSet
. 이 기능은 생산 Set
대신의를 List
하고보다 조금 더 효율적이어야한다 distinct
.
유용 할 수 있습니다.