System.out.print("Enter an integer: ");
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
int lArray = x - 2;
int[] newArray = new int[lArray];
System.out.println("Let's display all possible integers...");
for (int i = 0; i <= newArray.length; i++) {
newArray[i] = i + 2;
System.out.print(newArray[i] + " ");
}
我刚刚启动Java,但我确定如果我在另一种语言中编码类似,我将面临同样的问题。这是一个应用程序的摘录,其中列出了所有素数直到用户输入。Java:数组索引超出范围
x-2被用作lArray定义的原因是因为数组长度将是从2到数字{2,3,4,5 ... x}的所有整数。
我注意到,对于线
for (int i = 0; i <= newArray.length; i++) {
如果我改变i <= newArray
到,代码工作没有错误。但是,如果x是素数,那么用户的输入x将被忽略,这是一个问题。
+1考虑到两个问题 – 2010-10-16 23:35:38