どうも、ちょげ(@chogetarou)です。
Mapを結合する方法を紹介します。
方法

Mapを結合する方法は、2つあります。
addAll
1つは、addAllメソッドを使う方法です。
具体的には、addAllメソッドで片方のマップをもう片方のマップに追加します。
map1.addAll(map2) //map1にmap2を結合
もし、複数のMapを結合して1つにしたい場合は、「..」を使います。
//map1とmap2を結合した新しいMapを
var merge = {}..addAll(map1)..addAll(map2);
使用例
void main() {
var numbers1 = {
'one': 1,
'two': 2,
'three': 3,
};
var numbers2 = {
'four': 4,
'five': 5,
'six': 6,
};
var numbers = {}..addAll(numbers1)..addAll(numbers2);
print(numbers); //{one: 1, two: 2, three: 3, four: 4, five: 5, six: 6}
numbers1.addAll(numbers2);
print(numbers1); //{one: 1, two: 2, three: 3, four: 4, five: 5, six: 6}
}
…
もう1つは、「…」を使う方法です。
具体的には、「{}」内に結合したいMapを、「…map1」のように記述します。
//map1とmap2を結合
var merge = {
...map1,
...map2,
}
使用例
void main() {
var numbers1 = {
'one': 1,
'two': 2,
'three': 3,
};
var numbers2 = {
'four': 4,
'five': 5,
'six': 6,
};
var numbers = {
...numbers1,
...numbers2,
};
print(numbers); //{one: 1, two: 2, three: 3, four: 4, five: 5, six: 6}
}
まとめ
Mapを結合する方法は、次の2つです。
- addAllメソッドを使う方法
- 「…」を使う方法
コメント