どうも、ちょげ(@chogetarou)です。
distinctBy()関数で配列(Array)の重複を削除する方法を紹介します。
方法

distinctBy()関数で配列(Array)の重複を削除するには、toTypedArray()を使います。
まず、配列からdistinctBy{}を呼び出します。
distinctBy{}のクロージャーに、itを記述します。
そして、distinctBy{}からtoTypedArray()を呼び出します。
val result : Array<T> = array.distinctBy { it }.toTypedArray()
上記のtoTypedArray()は、distinctBy()を呼び出した配列の重複を削除したArrayを返します。
使用例
fun main() {
val numbers = arrayOf(1, 2, 2, 1, 3, 4, 1, 5, 3)
val result : Array<Int> = numbers.distinctBy{ it }.toTypedArray()
println(numbers.contentToString())
println(result.contentToString())
}
出力:
[1, 2, 2, 1, 3, 4, 1, 5, 3]
[1, 2, 3, 4, 5]
コメント