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++;
}
}
Run Code Online (Sandbox Code Playgroud)
运行程序后,它会显示以下错误:
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
Run Code Online (Sandbox Code Playgroud)
实际上,我还是这种语言的新手.我正在尝试创建一个程序,将值分配给10的数组并显示它们并从第一个数组开始再次显示.
我希望输出如下:
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
Run Code Online (Sandbox Code Playgroud)
一个ArrayIndexOutOfBoundsException意味着你试图使用一个索引到一个数组,而指数不存在.例如,如果数组中的最后一个有效索引是9并且您使用10,那么您将收到此错误.
这行代码是问题(错误消息告诉你行号):
while (x[i]<x[10]){
Run Code Online (Sandbox Code Playgroud)
x是一个长度为10的数组,这意味着它具有从0(零)到9的索引.x[10]不存在因此您得到错误.