[Dart]マップ(Map)をキーと値でループするには?

Dart

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

マップをキーと値でループ処理をする方法を紹介します。

スポンサーリンク

方法

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

マップをキーと値でループする方法は、2つあります。

forEach

1つは、forEachメソッドを使う方法です。

まず、マップからforEachメソッドを呼び出します。

そして、forEachメソッドの引数にコールバック関数を指定します。

コールバック関数の第1引数でキー、第2引数で値を取得できます。

また、コールバック関数の{}内には、ループ処理を記述します。

map.forEach((key, value) {
    //ループ処理
});

使用例

void main() {
  var numbers = {
    'one': 1,
    'two': 2,
    'three': 3,
  };
  
  numbers.forEach((key, value) {
    print('$key : $value');
  });
}

for-in

もう1つは、for-inループを使う方法です。

具体的には、inの後にマップのentriesプロパティを指定します。。

for (var element in map.entries) {
    //ループ処理
}

マップのキーは変数のkeyプロパティ、値は変数のvalueプロパティで取得できます。

使用例

void main() {
  var numbers = {
    'one': 1,
    'two': 2,
    'three': 3,
  };
  
  for (var num in numbers.entries) {
    print('${num.key} = ${num.value}');
  }
}

まとめ

リストをマップに変換する方法は、次の2つです。

  • forEachメソッドを使う方法
  • for-inループを使う方法

コメント

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