[Kotlin]indicesでリスト(List)のインデックスをループするには?

プログラミング・IT

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

indicesを使ってリスト(List)のインデックス(index)をループする方法を紹介します。

スポンサーリンク

方法

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

indicesを使ってリスト(List)のインデックス(index)をループするには、for文もしくはforeach()を使います。

for文の場合

for文の場合は、まず、for文のループ対象(inの右辺)にリストのindicesを指定します。

そして、for文のループ処理を指定します。

ループ変数で、リストのインデックスを取得できます。

for (index in list.indices) {
    //ループ処理
    //ループ変数「index」でリストのインデックスを取得
}

上記のforループは、リストのインデックスをループします。

使用例

fun main() {
    val list = listOf("A", "B", "C","D")
   
    for (index in list.indices) {
    	println("インデックス${index}は、${list[index]}")
    }
}
出力:
インデックス0は、A
インデックス1は、B
インデックス2は、C
インデックス3は、D

foreach()の場合

foreach()の場合は、まず、リストのindicesにアクセスします。

indicesからforEach()を呼び出します。

foreachのクロージャーにループ処理を指定します。

list.indices.forEach { index ->
    //ループ処理
    //引数「index」でインデックスを取得
}

上記のforEach()は、リストのインデックスをループします。

forEach()は、クロージャーの引数を省略できます。

引数を省略した場合は、「it」でインデックスを取得できます。

使用例

fun main() {
    val list = listOf("A", "B", "C","D")
    
    list.indices.forEach { index ->
         println("インデックス${index}は、${list[index]}")
    }
}
出力:
インデックス0は、A
インデックス1は、B
インデックス2は、C
インデックス3は、D

まとめ

indicesを使ってリスト(List)のインデックス(index)をループするには、for文もしくはforeach()を使います。

  • for (index in list.indices) { ループ処理 }
  • list.indices.forEach { index -> ループ処理 }

コメント

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