我正在尝试制作一个应用程序,要求用户输入数组中的项目数,然后要求他们用整数填充该数组。然后,将其打印出来。
当我运行它时,它要求我输入,然后给我:
线程“main”中出现异常 java.lang.ArrayIndexOutOfBoundsException: 10 在 main.main(main.java:13)
import java.util.Scanner;
public class main {
public static void main(String [] args){
Scanner scan = new Scanner(System.in);
System.out.println("Input number of units in array: ");
int i1 = scan.nextInt();
int[] arrayOne= new int[i1];
for(int i=0 ; i<=i1 ; i++){
System.out.println("Enter " + i + " unit in array.");
arrayOne[i] = scan.nextInt();
}
System.out.println(arrayOne);
}
}
你们能帮我找出我的错误在哪里吗?我尝试了一些不同的方法,但似乎没有任何效果。
谢谢!
最佳答案
数组是从零开始的。在这里你超出了上限。替换:
for (int i = 0; i <= i1; i++) {
与
for (int i = 0; i < i1; i++) {
也可以使用Arrays#toString显示数组内容,否则 Object#toString将显示数组的表示形式:
System.out.println(Arrays.toString(arrayOne));
关于java - 为什么我的数组不打印出我的输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16492461/