[Dart]Map(マップ)に要素を追加するには?

Dart

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

DartのMapに要素を追加する方法を紹介します。

スポンサーリンク

方法

コンピューター, ノート, オフィス, コード, プログラミング, プログラム

Mapに要素を追加する方法は、2つあります。

[]

1つは、[]を使う方法です。

まず、「map[key]」のように、変数名の後にキーを指定した[key]を追加します。

そして、「map[key]」に値を代入します。

map[key] = value //keyとvalueがセットの要素を追加

[]内のキーが存在しなければ、キーと代入した値がセットの要素がマップに追加されます。

使用例

import 'dart:collection';

void main() {

  var numbers = <String, int>{};
  
  numbers['One'] = 1;
  numbers['Two'] = 2;
  numbers['Three'] = 3;
  
  print(numbers); //{One: 1, Two: 2, Three: 3}
}

addAll

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

具体的には、MapからaddAllメソッドを呼び出します。

addAllメソッドの引数には、追加する別のマップを指定します。

map.addAll(otherMap) //mapにotherMapの要素を全て追加

addAllメソッドの引数に指定したMapの要素が、呼び出し側のMapに追加されます。

もし、2つのマップに同じキーが存在した場合は、addAllの引数に指定するマップのキーが優先されます。

使用例

void main() {
  var numbers = {
    'One' : 1,
    'Two' : 2,
    'Three' : 3,
  };
  
  var fourToSix = {
    'Four' : 4,
    'Five' : 5,
    'Six' : 6
  };
  
  numbers.addAll(fourToSix);
  
  print(numbers); //{One: 1, Two: 2, Three: 3, Four: 4, Five: 5, Six: 6}
}
スポンサーリンク

まとめ

Mapで要素を追加する方法は、次の2つです。

  • []で要素を追加する方法
  • addAllメソッドで別のマップを丸ごと追加する方法

上記の2つは代表的な方法になります。

Mapに要素を追加する方法は、他にもputIfAbsentメソッドやaddEntriesメソッドを使った方法などがあります。

コメント

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