这是最简单的数组,我甚至无法使用它!我的代码中是否缺少某些内容?或者我的编译器有问题吗?
代码:
public class example {
public static void main(String[] args){
int[] aryNums = new int[6];
aryNums[0] = 10;
aryNums[1] = 20;
aryNums[2] = 30;
aryNums[3] = 40;
aryNums[4] = 50;
aryNums[5] = 60;
aryNums[6] = 70;
System.out.println(aryNums[2]);
}
}
运行此代码后,我从编译器中得到以下消息:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6
at example.main(example.java:12)
我运行jre7,我使用的编译器/程序是eclipse lunar SR2(4.4.2)。我曾经一度回到Java,但我刚回到Java,所以我不知道我的代码是否正确。
由于
答案 0 :(得分:1)
如果算上它,你可以对数组的7个部分进行处理,但是你的数组定义为6,从索引0-5开始。这导致从aryNums[6]
分配引发错误,因为它高于数组的最大元素。
答案 1 :(得分:0)
你的数组大小为6(0到5),你正试图填补第六个不存在的情况。
答案 2 :(得分:0)
你的数组需要有7个元素,而不是6个。注意你在一个(没有冒犯的)玩具示例中报告了一个运行时错误 - 这种组合通常会使编译错误极不可能。< / p>
答案 3 :(得分:0)
你的数组有6个位置,因为它从0开始,给你0到5. 6超出范围。
答案 4 :(得分:0)
您将数组调整为6并尝试添加7个元素。