List< Map>转map
时间: 2023-12-08 11:06:25 浏览: 70
一个List中的Map可以转换为一个Map。可以通过迭代List中的每个Map,将每个Map中的键值对添加到新的Map中。如果Map中的键重复,可以选择覆盖原有的值或者保留原有的值。
下面是一个Java代码示例,将List中的Map转换为一个Map:
```
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
// 添加Map到List中
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("name", "John");
map1.put("age", 25);
list.add(map1);
Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("name", "Emily");
map2.put("age", 30);
list.add(map2);
// 将List中的Map转换为一个Map
Map<String, Object> map = new HashMap<String, Object>();
for (Map<String, Object> m : list) {
for (String key : m.keySet()) {
if (map.containsKey(key)) {
// 如果键已经存在,可以选择覆盖原有的值或者保留原有的值
// map.put(key, m.get(key));
} else {
map.put(key, m.get(key));
}
}
}
// 输出新的Map
System.out.println(map);
```
输出结果:
```
{name=John, age=25}
```
在上面的示例中,先创建了一个List,并向其中添加了两个Map。然后通过迭代List中的每个Map,将每个Map中的键值对添加到新的Map中。由于两个Map中都有键“name”和“age”,最终新的Map只保留了第一个Map中的键值对。
阅读全文