问题
单项选择题
下列程序的输出结果是( )。
publicclassArrayTest
publicstaticvoidmain(Stringargs[])
int[]intArray=newint[3]
for(inti=0;i<3;i++)
intArray[i]=i+2;
system.out.println("IntArrayr["+i+"]"=intArray[i]);
System.out.println(“---------”);
intarrLen=4;
IntArray=newint[arrLen];
For(intj=intArray.length;j>=0;j--)
intArray[j]=j*3;
system.out.println("hello"+intArray[j]);
A.编译未通过
B.编译通过,但运行错误
C.可以运行,但有错误
D.以上都不对
答案
参考答案:B
解析: 这是一道考查数组引用的题,目的是考查如何在程序中引用初始化后的数组。引用的方式为arrayName[index],其中index为数组的下标,可以为整数,变量和表达式,范围从0开始,一直到数组的长度减1。在Java语言中,是要对数组下标进行检查的。因此当程序运行到数组的长度值时,就发生了越界现象。