public Map mystery(Map map1, Map map2) {
Map result = new TreeMap();
for (String s1 : map1.keySet()) {
if (map2.containsKey(map1.get(s1))) {
result.put(s1, map2.get(map1.get(s1)));
}
}
return result;
}
map1 = {bar = 1,baz = 2,foo = 3,mumble = 4}; map2 = {1 =地球,2 =风,3 =空气,4 =火}}
答案 0 :(得分:1)
对于map1方法中的每个键,查看相应的值,并且该值作为map2中的键存在,而不是将其添加到新的TreeMap中。
考虑一次迭代。 map1的密钥为bar
,其值为1
。现在,map2的值为1
,因为它的值为earth
。因此,放入新地图的数据为bar:earth
,依此类推..
另请注意,由于结果地图是TreeMap
元素将以字典顺序存储(因为键是字符串和TreeMap按照按键自然排序按顺序存储元素)。
答案 1 :(得分:0)
它正在计算函数map2(map1)
的组成,并为您提供了大量的原始类型警告。