在Java中初始化但空的整数数组中存储了什么值

时间:2015-03-07 21:33:03

标签: java arrays null

我做了以下数组:

int[] array = new int[9];

此数组已初始化,但为空。在这种情况下,这个数组的任何索引的值是多少?当我打印出来时,它给了我0.这是否意味着存储零(如果你已经调用了int x = 0)?或者是null

此外,对于任何Object数组,这是否相同?它是此对象的空实例,还是null

6 个答案:

答案 0 :(得分:0)

所有元素都初始化为0.

答案 1 :(得分:0)

如果它是一个对象数组,它将用null初始化,如果它是一个原始值数组(如int),它将用0初始化。对于非数字原语boolean,它是false,而对于'char',它是'\u0000'。有关更多信息,请查看以下页面上的默认值表:

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

答案 2 :(得分:0)

我从Javadocs复制:

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

原始数据类型:默认值

Data Type   Default Value (for fields)
byte    0
short   0
int 0
long    0L
float   0.0f
double  0.0d
char    '\u0000'
String (or any object)      null
boolean false

因此,对于int,它为零(0)

答案 3 :(得分:0)

整数类可以为null然而" int" type不能为null。

你可以试试int x = null;你有错误。

因此,在您更改之前,默认情况下会将其创建为0.

答案 4 :(得分:0)

默认情况下,int数组中的每个值都初始化为0。这是您可以轻松尝试的内容:

    int [] nums = new int [9];

    for (int i = 0; i < nums.length; i++) {
        System.out.println(nums[i]);
    }

结果:

0
0
0
0
0
0
0
0
0

答案 5 :(得分:0)

以下是Java中不同类型的默认值:

字节0

短0

int 0

长0L

浮动0.0f

双倍0.0d

char'u0000'

String(或任何Object)null

布尔值假

如您所见,int默认为0。