我是编程新手,Java将是我的第一语言。我也在使用eclipse完成所有编码。
我一直在研究数组只是想了解它们。我找到了这个网站:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html
我自己制作了第一个代码示例的变体:
package testArray;
public class TestArray
{
public static void main(String[] args)
{
// Declare a new array of integers
int[] anArray;
// Sets the array length to 5
anArray = new int[5];
// Setting each array element
anArray[0] = 1;
anArray[1] = 2;
anArray[2] = 3;
anArray[3] = 4;
anArray[5] = 5;
// Displaying the value of each array element
System.out.println("Element at index 0: " + anArray[0]);
System.out.println("Element at index 0: " + anArray[1]);
System.out.println("Element at index 0: " + anArray[2]);
System.out.println("Element at index 0: " + anArray[3]);
System.out.println("Element at index 0: " + anArray[4]);
}
}
我一直在控制台中收到此错误:
线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:5 在testArray.TestArray.main(TestArray.java:15)
我也尝试过使用他们网站上的代码但收到同样的错误。是不是在eclipse中设置了什么?
非常感谢任何帮助!
注意:如果有人有一些对初学程序员有用的有用网站,请继续使用您的帖子添加它们!
答案 0 :(得分:4)
问题在于:
anArray[5] = 5;
将其替换为:
anArray[4] = 5;
因为你已经定义了一个大小为5的数组,所以你只能使用0-4之间的索引:
anArray = new int[5];
如果您尝试访问任何高于4的索引,您将遇到ArrayIndexOutOfBoundException。
答案 1 :(得分:2)
anArray[5] = 5;
实际访问第6个元素,该元素不存在,因为数组是基于0的。 new int[5]
包含5个元素,编号为0,1,2,3和4.
所有索引都应小于数组长度。请改用anArray[4] = 5;
。
答案 2 :(得分:0)
Java中的数组基于0,您创建了一个大小为5的数组。
anArray [5] = 5;
。它超出了数组的范围,但看起来可能只是一个错字。你可能想放
anArray [4] = 5;
答案 3 :(得分:0)
也许你想要
package testArray;
public class TestArray
{
public static void main(String[] args)
{
// Declare a new array of integers
int[] anArray;
// Sets the array length to 5
anArray = new int[5];
// Setting each array element
anArray[0] = 1;
anArray[1] = 2;
anArray[2] = 3;
anArray[3] = 4;
anArray[4] = 5;
// Displaying the value of each array element
System.out.println("Element at index 0: " + anArray[0]);
System.out.println("Element at index 1: " + anArray[1]);
System.out.println("Element at index 2: " + anArray[2]);
System.out.println("Element at index 3: " + anArray[3]);
System.out.println("Element at index 4: " + anArray[4]);
}
}