map1 ={ "a":10,"b":6 },map2 ={ "a":10,"b":6,"c":7,"d":8 };
Flutter:如何合并两个对象并对同一键的值求和?
发布于 2021-10-17 09:42:23
对最长的映射执行forEach,并检查小映射是否包含键,如果包含,则使用总和更新值或添加新的值。
map2.forEach((key, value) {
if (map1.containsKey(key)) {
map1[key] = value + map1[key]!;
} else {
map1[key] = map2[key]!;
}
});map1将是最终结果。
发布于 2021-10-17 09:50:47
因此,如果您想合并/合并这两个地图,请使用以下代码this answer
final firstMap = {"1":"2"};
final secondMap = {"2":"3"};
final thirdMap = { // here simple adding element to map
...firstMap,
...secondMap,
};但是,如果您想进行求和合并,请使用以下代码:
map2.forEach((k, v) {
if (map1.containsKey(k)) { // check if the map has more then 2 values as the 1st one
map1[k] = v + map1[k]!; // if yes so make the some
} else {
map1[k] = map2[k]!; // if no then add the values to map
}
});见见普拉贾帕蒂吧。
https://stackoverflow.com/questions/69602905
复制相似问题