public static void main(String[] args){
int [] a=new int[256];
System.out.println(a['t']);
}
我在script.wonder中看到 a ['t'] 是什么意思。我试图执行代码。无论我在[' t ']中添加什么字符,它都会返回0,为什么?
答案 0 :(得分:3)
问:无论我在['t']中添加什么字符,它都会返回0
您发布的代码并未显示您在[]中添加任何内容。所有元素最初都是“0”。
试试这个:
public static void main(String[] args){
int [] a=new int[256];
a['t'] = 'T';
System.out.println("a['t']: " + a['t']);
}
你应该看到这样的事情:
a['t']: 84
答案 1 :(得分:1)
这是因为int数组没有用任何值初始化,它只是用256大小声明,所以它被默认初始化为默认值0s
答案 2 :(得分:1)
你所做的相当于:
public static void main(String[] args){
int [] a=new int[256];
System.out.println(a[116]);
}
因为't'的ascii代码是116,所以你访问一个新的int数组的位置116,并且int的默认值是0,所以这个数组的所有位置都将为0,除非你分配了不同的东西。
答案 3 :(得分:1)
a['t']
为a[116]
,为零,因为默认情况下java会将数组内容初始化为零。
答案 4 :(得分:0)
int [] a=new int[256];
上面的代码创建了整数数组,即如果没有指定显式值,整数总是用0初始化,如果你调用['T']它会返回0。
答案 5 :(得分:0)
不确定为什么你用't'访问一个int数组,但是't'那里它实际上会先转换为int,它应该是116(ASCII代码为't'),然后就意味着访问[116],并且因为你没有初始化那个数组,所以该数组中的所有元素都应该默认设置为0,所以你得到了那个结果。
答案 6 :(得分:0)
当您创建Array of Integers对象时,默认情况下Array默认为0(除非您为其指定一些值)。