dart - 将多张 map 组合/合并为一张 map

标签 dart

如何将 dart 中的 2 个或更多 map 组合/合并为 1 个 map ? 例如我有类似的东西:

 var firstMap = {"1":"2"};
 var secondMap = {"1":"2"};
 var thirdMap = {"1":"2"};

我想要:

 var finalMap = {"1":"2", "1":"2", "1":"2"};

最佳答案

您可以使用Map对象的addAll方法

var firstMap = {"1":"2"};
var secondMap = {"2":"3"};

var thirdMap = {};

thirdMap.addAll(firstMap);
thirdMap.addAll(secondMap);

print(thirdMap);

或者

var thirdMap = {}..addAll(firstMap)..addAll(secondMap);

更新

自 dart sdk 2.3 起 您可以使用扩展运算符 ...

final firstMap = {"1":"2"};
final secondMap = {"2":"3"};

final thirdMap = {
   ...firstMap,
   ...secondMap,
};

关于dart - 将多张 map 组合/合并为一张 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45200560/

相关文章:

flutter - 在 ListView 中使用CachedVideoPlayer

flutter - Flutter:我的变量中有NULL,如何使用我的函数?

linux - 连接服务协议(protocol)时出错 : failed to connect to http://127. 0.0.1:41209/y-F2GYjV9_Y=/

dart - Flutter:实现 Material Search 栏以从服务器异步搜索数据

flutter - 如何在 json 对象中将字符串以外的其他类型的键值转换为 dart 中的字符串?

dart - 类型检查器不喜欢实现 noSuchMethod 的可调用对象

flutter - Flutter 无响应重试 Http Get 请求

dart - 如何使 Sink<Locale> 格式化 Stream<String> 的结果?

datetime - Dart/Flutter 如何比较两个 TimeOfDay 时间?

angular - 如何在 Angular Dart Material 下拉菜单的顶部添加 float 标签