将两张地图合并为多地图
在Java中将两个Map组合成单个番石榴多地图的最佳方法是什么?
例如:
- Map1 包含 (1, a) 和 (2, b)
- Map2 包含 (2, c) 和 (3, d)
然后,生成的组合多地图将包含
- (1, {a}), (2, {b, c}) 和 (3, {d})
这是我目前的解决方案:
Multimap<T, K> combineMaps(Map<T, K> map1, Map<T, K> map2) {
Multimap<T, K> multimap = new MultiMap();
for (final Map.Entry<T, K> entry : map1.entrySet()) {
multimap.put(entry.getKey(), entry.getValue());
}
for (final Map.Entry<T, K> entry : map2.entrySet()) {
multimap.put(entry.getKey(), entry.getValue());
}
return multimap;
}