对象包装器和自动装箱
-
包装器(wrapper):
基本数据int有一个与之对应的类------Integer,通常,这样的类称之为包装器(wrapper)
如果有一个ArrayList<>,尖括号里是不允许使用基本数据类型的(即不可用写为ArrayList<int>),只可以写为ArrayList<Integer>
注意:ArrayList<Integer>的效率要远低于int[],但是前者的操作更方便,在构造较小的数组时可以使用前者
-
自动装箱(autoboxing):
public static void main(String[] args) { ArrayList<Integer> l = new ArrayList<>(); //JDK7之后,右边的泛型声明可以省略 int i = 1; l.add(i); //等效于l.add(Integer.ValueOf(3)) }