我有两个linkedHashmaps,它们具有相同的长度,具有相同的键名但值不同。例如:
Map<String, Double> map1= new LinkedHashMap<String, Double>();
map1.put("A", 2.3);
map1.put("B", 6.1);
map1.put("C", 5.3);
Map<String, Double> map2= new LinkedHashMap<String, Double>();
map2.put("A", 10.3);
map2.put("B", 60.1);
map2.put("C", 0.3);
如何将map1中的每个值与map2中相同的对应键(A 2.3 * 10.3,B 6.1 * 60.1等)相乘,并将结果保存到新的linkedHashMap?
我试了这个没有运气。
Map<String, Double> map3= new LinkedHashMap<String, Double>();
double valueMap1 = map1.get(key);
double valueMap2 = map2.get(key1);
for(String key : map1.keySet())
for(String key1 : map2.keySet()){
if(map1.containsKey(key1)){
double newValue =valueMap1* valueMap2;
map3.put(key1, newValue);
}
}
答案 0 :(得分:1)
这是应解决问题的循环
Map<String, Double> map3= new LinkedHashMap<String, Double>();
for(String key : map1.keySet()) {
if(map2.containsKey(key)) {
map3.put(key, map1.get(key) * map2.get(key);
}
}