提问人:cvbattum 提问时间:3/8/2015 最后编辑:cvbattum 更新时间:11/16/2023 访问量:1266
什么值存储在 Java 中初始化但为空的整数数组中 [已关闭]
What value is stored in an initialized but empty integer array in Java [closed]
问:
我做了以下数组:
int[] array = new int[9];
此数组已初始化,但为空。
在这种情况下,此数组的任何索引的值是多少?
当我打印出来时,它给了我 0。
这是否意味着这里存储了一个零(就像你调用了一样)?
或者是吗?int x = 0
null
另外,对于任何数组都是一样的吗?
它是这个对象的空实例,还是?Object
null
答:
0赞
Emil Laine
3/8/2015
#1
所有元素都初始化为 0。
1赞
Marv
3/8/2015
#2
如果它是一个对象数组,它将用 进行初始化,如果它是一个原始值数组(如 ),它将用 进行初始化。对于非数字原语,它是 ,对于 'char',它是 。有关详细信息,请查看以下页面上的默认值表:null
int
0
boolean
false
'\u0000'
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
评论
0赞
Melika Barzegaran
3/8/2015
如果原语是 ,它将使用 value 进行初始化。boolean
false
0赞
Marv
3/8/2015
@MelikaBarzegaranHosseini我已经相应地编辑了我的帖子。
2赞
adrCoder
3/8/2015
#3
基元数据类型 - 默认值:
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)。
0赞
Arnaud Bertrand
3/8/2015
#4
Integer class 可以为 null,但 “int” 类型不能为 null。
你可以试试 int x = null;你会有一个错误。
因此,默认情况下,它将创建为 0,直到您更改它。
0赞
Zarwan
3/8/2015
#5
默认情况下,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
0赞
Dermot Blair
3/8/2015
#6
以下是 Java 中不同类型的默认值:
字节 0
空头 0
整数 0
长 0L
浮子 0.0F
双 0.0d
字符 'u0000'
字符串(或任何对象)null
boolean false
如您所见,int 默认为 0。
评论