import java.util.*;
class Ball{
public static void main(String args[])
{
ArrayList <Integer> al = new ArrayList<Integer>();
al.add(new Integer(1));
System.out.println(al);
}
}
我正在阅读 Herbert Schildt 撰写的完整引用 Java 2,并且偶然发现了这个片段。 它说
The program begins by creating a collection of integers.
不能在集合中存储原始数据类型
so objects of type Integer are created and stored.
但是我尝试使用 al.add(1)
并且它有效。如何? (在本例中,1 是原始数据类型,而不是对象)
最佳答案
您的原始值将被装箱到适当的包装对象(Integer、Long 等)并添加到 Collection 中,并且此功能是从 java 5 添加的。
如果您使用旧版本(Java 5之前),在这种情况下您将收到编译错误。
关于java - 添加到集合中的元素应该是对象。那为什么我可以添加原始数据类型呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23731961/