2012-05-11 60 views

回答

5

在这种情况下,该值存储为原语。如果将类型更改为原始的包装Integer,则该值将作为“自动装箱”Object。例如,此代码会自动复制您的值:

Integer[] array = new Integer[10]; 
for (int i = 0; i < array.length; i++) { 
    array[i] = 0; 
} 
+0

非常感谢 – user1296058

2

在Java中,同时存在基元数组和对象数组。

int[]是一个基元数组,因此0被存储为一个基元。

对应的对象数组的类型应该是Integer[]。将0存储在这样一个数组中会导致它被“自动装箱”成一个Integer对象。

值得指出的是,Java容器(以及任何其他泛型类)只能用于对象。例如,不可能构建intList,仅的List。正如我上面解释的,这个限制不适用于数组。

相关问题