提问在java中put()里的参数问题

Map m1=new HashMap();
m1.put("one",new Integer(1));
右边的value值加个new是什么意思? 为什么看到有些程序可以m1.put("one",freq(常数));
右边的value值到底要是一个常数还是对象?

慕村225694
浏览 334回答 2
2回答

紫衣仙女

put 第一个是key ,第二个是value,value加个new,表示新建一个对象放入到map中,仅仅是一个做法而已。右边要求一个对象,至于freq(常数),只是调用freq方法,把freq的返回值作为value而已。

陪伴而非守候

要一个对象。但jdk5以后有autoboxing功能,也就是如果方法需要的是对象,你传入的是int,它会自动帮你转成Integer。double转成Double,以此类推。
打开App,查看更多内容
随时随地看视频慕课网APP