List<Map<String, Object>> 通过map中的 key1和key2的值相同的数量
时间: 2024-11-09 13:20:27 浏览: 34
List<Map<String, Object>> 类型的集合中,每个 map 都包含两个键(key1和key2)以及对应的对象值。如果你想要找出所有那些 key1 和 key2 的值都完全相同的 map 对象,你需要遍历这个列表,比较每一对 map 中对应 key 的值是否相等。
你可以编写一段这样的代码:
```java
List<Map<String, Object>> list = ...; // 假设这是你的列表
Map<String, String> valueComparator = new HashMap<>(); // 用于暂存 key1 和 key2 的值
for (Map<String, Object> map : list) {
String value1 = map.get("key1");
String value2 = map.get("key2");
if (!valueComparator.containsKey(value1) && !valueComparator.containsKey(value2)) {
valueComparator.put(value1, value2);
} else if (!valueComparator.get(value1).equals(value2)) {
// 如果之前遇到过 key1 对应的不同 key2,说明不符合条件,跳过
continue;
}
// 找到的 map 的值相同,添加到结果集合或做其他处理
// 比如创建一个新的 map 存储满足条件的数据
}
// 假设 result 是存储符合条件的 map 的新列表
List<Map<String, Object>> sameValueMaps = ...;
阅读全文