相关疑难解决方法(0)

Java:数组索引超出界限异常

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] + " ");
}
Run Code Online (Sandbox Code Playgroud)

我最近刚刚开始使用Java,但我确信如果我用其他语言编写类似的代码,我会遇到同样的问题.这是一个应用程序的摘录,它列出了用户输入之前的所有素数.

将x-2用作lArray的定义的原因是因为数组的长度将是从2到数字{2,3,4,5 ...... x}的所有整数.

我注意到了这条线

for (int i = 0; i <= newArray.length; i++) {
Run Code Online (Sandbox Code Playgroud)

如果我i <= newArray改为i < newArray,代码可以正常工作.但是,如果x是素数,则省略用户的输入x,这是一个问题.

java

7
推荐指数
2
解决办法
5万
查看次数

标签 统计

java ×1