java 两个 list<map> 中找到map 中不同的key 和value
时间: 2023-05-24 22:03:10 浏览: 651
可以使用嵌套循环来比较两个 list<map> 中的每个 map,然后找到其中不同的key和value。可以参考以下代码:
```
List<Map<String, Object>> list1 = new ArrayList<>();
List<Map<String, Object>> list2 = new ArrayList<>();
// 假设list1和list2已经初始化并填充了数据
for (Map<String, Object> map1 : list1) {
for (Map<String, Object> map2 : list2) {
// 比较两个map中的每个键值对
for (String key : map1.keySet()) {
if (!map2.containsKey(key)) {
System.out.println("Key " + key + " is not present in map2");
} else {
Object value1 = map1.get(key);
Object value2 = map2.get(key);
if (!value1.equals(value2)) {
System.out.println("Value of key " + key + " is different in map1 and map2");
}
}
}
}
}
```
这段代码会遍历list1中的每个map,然后在list2中查找与之对应的map。对于每个map中的键值对,将检查第二个map中是否存在相同的键。如果不存在,则打印出对应的提示信息;如果存在,则检查两个map中相应键的值是否相同。如果不同,则打印出对应的提示信息。
阅读全文