Qual è il modo migliore per combinare due mappe in un singolo Guava MultiMap in Java?Combina due mappe in una MultiMap
Ad esempio:
- Map1 contiene (1, a) e (2, b)
- Map2 contiene (2, c) e (3, d)
Poi la risultante multimap combinato conterrebbe
- (1, {a}), (2, {b, c}), e (3, {d})
Questa è la mia soluzione attuale:
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;
}
Beh, spesso non c'è la via migliore e la tua strada mi sembra sensata. Hai qualche problema con questo? In caso contrario, mi limiterei a seguirlo (tranne che aggiungerei i generici a 'newMultiMap()' too :)). – Thomas