慕萊塢9220042
2016-06-28 11:47:11
每天在這里貼一道 Java 題,借用java貼吧題目,來提高各位學習的興趣和質量,希望多多支持!回答正確與否沒有關系,重在討論,借鑒別人的思路。請問 List,Set 這樣的容器中可以存放基本類型的數據嗎?
23 回答

冰山點水
TA貢獻109條經驗 獲得超149個贊
不能存放基本數據類型的數據,只能存放引用類型的數據。List,Set中實際存放的是對象的內存地址,即使將這里面的引用變量置為null,里面內存地址所對應的值依然存在。上述題中:list.add(1)雖然沒有報錯,但實際上是因為編譯器自動增加了代碼:list.add(Integer.valueOf(1))? (自動裝箱)
所以從嚴格意義上講,List和Set中不能存放基本數據類型的數據。

Dr_Susu
TA貢獻1條經驗 獲得超0個贊
在沒有定義泛型的情況下,List、set集合是可以存儲任何類型的數據。當定義泛型后,要根據你定義的類型來存儲數據,如題中的泛型定義的類型是Integer,所以只能存儲Integer類型的數據。
添加回答
舉報
0/150
提交
取消