这一题有什么有关问题
这一题有什么问题
------解决方案--------------------
首先,B,D是错的,因为Map没有set()方法。
A错是因为:map.get(key) 返回的是Object对象。在java中 +号只做2件事情:1.数字的运算;2.合并字符串。 而Object + int这个是不行的。
------解决方案--------------------
可以用泛型来: Map<String, Double> map = new HashMap<String, Double>();
map.put("tom", 123.6);
map.put("jim", 234.5);
map.put("terry", 45.3);
map.put("jim", map.get("jim") + 100);
map.put("jim", 234.5);
- Java code
9.请看一下代码: Map map=new HashMap(); map.put(“tom”,123.6); map.put(“jim”,234.5); map.put(“terry”,45.3); 《插入代码》 《插入代码》处要实现的功能是把key为“jim”的value值在原有数字的基础上添加100 A.map.put(“jim”,map.get(“jim”)+100); B.map.set(“jim”,map.get(“jim”)+100); C.map.put(“jim”,234.5); D.map.set(“jim”,234.5); //为什么拷贝到eclipse里a,b都是错的??
------解决方案--------------------
首先,B,D是错的,因为Map没有set()方法。
A错是因为:map.get(key) 返回的是Object对象。在java中 +号只做2件事情:1.数字的运算;2.合并字符串。 而Object + int这个是不行的。
------解决方案--------------------
可以用泛型来: Map<String, Double> map = new HashMap<String, Double>();
map.put("tom", 123.6);
map.put("jim", 234.5);
map.put("terry", 45.3);
map.put("jim", map.get("jim") + 100);
map.put("jim", 234.5);