什么是最干净的方法?
我有
Map<String, List<String>> map1 = ...;
Map<String, List<String>> map2 = ...;
Map<String, List<String>> map3 = ...;
映射都具有完全相同的键,并且没有重复的值。对于每个键,我想将map2和map3的列表追加到map1列表的末尾。
这是我目前正在尝试执行的操作:
Map<String, List<String>> conversions = new HashMap<String, List<String>>();
List<String> histList = new ArrayList<String>();
for(String key : map1.keySet()){
histList.addAll(map1.get(key));
histList.addAll(map2.get(key));
histList.addAll(map3.get(key));
conversions.put(key,histList);
}
如果您不想创建临时列表,则可以直接添加到列表中,而不必替换它。
for (String key: map1.keySet()) { //iterate over all the keys
map1.get(key).addAll(map2.get(key)); //add all the values in map 2 to map 1
map1.get(key).addAll(map3.get(key)); //add all the values in map 3 to map 1
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句