[Kotlin]Map(マップ)の要素をforループするには?

Kotlin

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

Map(マップ)のキーと値の要素をforループする方法を紹介します。

スポンサーリンク

方法

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

Map(マップ)のキーと値の要素をforループするには、inの後にMapを指定します。

まず、for(変数 in map){}のように、for文のループ対象にMapを指定します。

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

ループ処理内では、ループ変数のkeysでMapのキー、ループ変数のvalueでMapの値を取得できます。

for (item in map) {
    //ループ処理
    //item.keyでmapのキーを取得
    //item.valueでmapの値を取得
}

上記のforループは、Mapの要素をEntryとしてforループします。

もし、Mapのキーと値を別々の変数で扱いたい場合は、(key, value)のような2つの変数を記述した()をinの左辺に指定します。

for ((key, value) in map) {
    //ループ処理
    //keyでmapのキーを取得
    //valueでmapの値を取得
}

使用例

使用例1

fun main() {
    val numbers = mapOf(
        "one" to 1,
        "two" to 2,
        "three" to 3,
        "four" to 4,
        "five" to 5
    )
    
    for (entry in numbers) {
        println("${entry.key} :${entry.value}")
    }
}
出力:
one : 1
two : 2
three : 3
four : 4
five : 5

使用例2

fun main() {
    val numbers = mapOf(
        "one" to 1,
        "two" to 2,
        "three" to 3,
        "four" to 4,
        "five" to 5
    )
    
    for ((key, value) in numbers) {
        println("$key = $value")
    }
}
出力
one = 1
two = 2
three = 3
four = 4
five = 5

コメント

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