在 Java 中将两个 Map 组合成一个 Guava MultiMap 的最佳方法是什么?
例如:
- 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;
}
...这些是什么类型的多重地图?它们是来自 Guava 还是其他图书馆?
在番石榴,你可以做
multimap.putAll(Multimaps.forMap(map1));
multimap.putAll(Multimaps.forMap(map2));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)