public class Repetition {
public static void main (String[]a){
int[] x;
x = new int[10];
int i;
int n=0;
for (i=0;i<x.length;i++){
n++;
x[i]=n;
System.out.print(x[i] + " ");
}
i=0;
while (x[i]<x[10]){
System.out.println(x[i]);
i++;
}
}
运行程序后,会显示以下错误:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
at Repetition.main(Repetition.java:14)
1 2 3 4 5 6 7 8 9 10 Java Result: 1
实际上,我还是这种语言的新手。我正在尝试创建一个程序,将值分配给10个数组并显示它们并从第一个数组开始再次显示。
我希望输出如下:
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
答案 0 :(得分:6)
ArrayIndexOutOfBoundsException
表示您尝试将索引用于数组,并且该索引不存在。例如,如果数组中的最后一个有效索引是9并且您使用10,那么您将收到此错误。
这行代码是问题(错误消息告诉你行号):
while (x[i]<x[10]){
x
是一个长度为10的数组,这意味着它的索引从0(零)到9. x[10]
不存在,因此您得到错误。