どうも、ちょげ(@chogetarou)です。
配列(array)にフィルターをかける方法を紹介します。
方法

配列(array)にフィルターをかけるには、クロージャーを使います。
まず、filter()を呼び出します。
filter()のクロージャーで、残す要素の条件式を返します。
filter()のクロージャーでは、配列の要素を「it」もしくは引数で取得します。
//array=対象の配列
//配列の要素は、itもしくはクロージャーの引数で取得
val result : List<T> = array.filter { 条件式 }
上記のfilter()は、条件式でtrueを返した要素のみを配列から抽出したリスト(List)を結果として返します。
もし、filter()の結果を配列に変えたい場合は、toTypedArray()を呼び出します。
//フィルターの結果を配列として取得
val result : Array<T> = array.filter { 条件式 }.toTypedArray()
使用例
fun main() {
val nums = listOf(1, 2, 3, 4, 5, 6)
val result : Array<Int> = nums.filter { it % 2 == 0 }.toTypedArray()
println(result.contentToString())
}
出力:
[1, 3, 6]
コメント