!
线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException?
包装图钉;
public class Array {
public static void main(String[] args) {
int i;
int[] ar1 = new int[50];
for(i = 0; i < ar1.length; i++)
{
ar1[i] = i * 2 + 1;
System.out.print(ar1[i] + " ");
};
System.out.println();
for(i = ar1.length; i > -1; i--)
{
ar1[i] = i * 2 - 1;
System.out.print(ar1[i]);
};
}
}
编译后,控制台显示:
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95
97 99
线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:
50 at studing.Array.main(Array.java:18)
我想要第二行的输出控制台
99 97 95 93 ...
提前致谢!
最佳答案
您在第二个循环中从ar1.length
开始,这超出了范围。
为了使其正常工作,您需要从ar1.length-1
开始,这是数组的最大索引。
这是因为数组在Java中是基于0的,如@Maroun Maroun的注释中所述。
关于java - 使用数组时代码中的错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25765532/