Java中初始化但为空的int数组中存储的值是什么[已关闭]

628mspwn  于 2023-05-12  发布在  Java
关注(0)|答案(6)|浏览(109)

**已关闭。**此问题不符合Stack Overflow guidelines。目前不接受答复。

这个问题似乎不是关于在help center定义的范围内编程。
8年前关闭。
Improve this question
我创建了以下数组:

int[] array = new int[9];

此数组已初始化,但为空。
在这种情况下,这个数组的任何索引的值是什么?
当我把它打印出来的时候,它给了我0。
这是否意味着这里存储了一个零(就像你调用int x = 0一样)?
还是null
另外,这对于任何Object数组都是一样的吗?
它是这个对象的空示例,还是null

lsmd5eda

lsmd5eda1#

Oracle Java Documentation复制。
Primitive Data Types-默认值:

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

因此,对于int,它是零(0)。

ijnw1ujt

ijnw1ujt2#

如果它是一个对象数组,它将被初始化为null,如果它是一个原始值数组(如int),它将被初始化为0。对于非数字原语boolean,它是false,对于'char',它是'\u0000'。有关详细信息,请查看下一页上的默认值表:
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

2skhul33

2skhul333#

所有元素都初始化为0。

t3psigkw

t3psigkw4#

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
00jrzges

00jrzges5#

以下是Java中不同类型的默认值:
字节0
做空0
int 0
长0L
浮动0.0f
双0.0d
char 'u0000′
String(或任何Object)null
布尔假
正如您所看到的,int默认值为0。

9rbhqvlz

9rbhqvlz6#

Integer类可以为null,但“int”类型不能为null。
你可以尝试int x = null;你会有一个错误。
因此,默认情况下,它将创建为0,直到您更改它。

相关问题