Cách tốt nhất để kết hợp hai Bản đồ thành một Bản đồ Đa hướng trong Java là gì?Kết hợp hai Bản đồ vào một MultiMap
Ví dụ:
- Map1 chứa (1, a) và (2, b)
- Map2 chứa (2, c) và (3, d)
Sau đó, kết quả kết hợp Multimap sẽ chứa
- (1, {a}), (2, {b, c}), và (3, {d})
Đây là giải pháp hiện tại của tôi:
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;
}
Vâng, thường không có cách nào _best_ và cách của bạn có vẻ hợp lý với tôi. Bạn có bất kỳ vấn đề với điều này? Nếu không, tôi chỉ cần gắn bó với nó (ngoại trừ việc tôi sẽ thêm generics vào 'MultiMap mới()' quá :)). – Thomas