[Kotlin]配列(array)にフィルターをかけるには?

Kotlin

どうも、ちょげ(@chogetarou)です。

配列(array)にフィルターをかける方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

配列(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]

コメント

タイトルとURLをコピーしました