每天在这里贴一道 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
提交
取消