java 多个map取交集的代码实现
时间: 2023-03-02 22:16:04 浏览: 202
可以使用 Java 中的 Set 类型来实现多个 Map 的取交集操作。具体代码如下:
```java
Map<Integer, String> map1 = new HashMap<>();
map1.put(1, "a");
map1.put(2, "b");
map1.put(3, "c");
Map<Integer, String> map2 = new HashMap<>();
map2.put(2, "b");
map2.put(3, "c");
map2.put(4, "d");
Map<Integer, String> map3 = new HashMap<>();
map3.put(3, "c");
map3.put(4, "d");
map3.put(5, "e");
Set<Map.Entry<Integer, String>> set1 = map1.entrySet();
Set<Map.Entry<Integer, String>> set2 = map2.entrySet();
Set<Map.Entry<Integer, String>> set3 = map3.entrySet();
set1.retainAll(set2);
set1.retainAll(set3);
for (Map.Entry<Integer, String> entry : set1) {
System.out.println(entry.getKey() + " : " + entry.getValue());
}
```
以上代码中,我们先定义了三个 Map 类型的对象 map1、map2 和 map3,并对它们进行了初始化。然后,我们使用 Set 类型的对象 set1、set2 和 set3 来分别保存 map1、map2 和 map3 的键值对。接着,我们使用 Set 类型的 retainAll 方法来实现 set1、set2 和 set3 的取交集操作,最后,我们使用 for 循环遍历 set1 中的键值对并输出。
阅读全文