Map m1=new HashMap();m1.put("one",new Integer(1));右邊的value值加個(gè)new是什么意思? 為什么看到有些程序可以m1.put("one",freq(常數(shù)));右邊的value值到底要是一個(gè)常數(shù)還是對(duì)象?
2 回答

紫衣仙女
TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個(gè)贊
put 第一個(gè)是key ,第二個(gè)是value,
value加個(gè)new,表示新建一個(gè)對(duì)象放入到map中,僅僅是一個(gè)做法而已。
右邊要求一個(gè)對(duì)象,至于freq(常數(shù)),只是調(diào)用freq方法,把freq的返回值作為value而已。

陪伴而非守候
TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊
要一個(gè)對(duì)象。
但jdk5以后有autoboxing功能,也就是如果方法需要的是對(duì)象,你傳入的是int,它會(huì)自動(dòng)幫你轉(zhuǎn)成Integer。double轉(zhuǎn)成Double,以此類(lèi)推。
添加回答
舉報(bào)
0/150
提交
取消