当我试图将temp
的值放入int[] unDupe
的i
位置时,问题似乎在我的for
循环内。我得到的错误:为什么我会收到“ArrayIndexOutOfBoundsException:0”?
'Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at main.Main.main(Main.java:33)'
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[] unDupe = {};
System.out.print("Enter a number sequence (eg. '1 2 10 20'): ");
String dupe = input.nextLine();
String[] dupeSplit = dupe.split(" ");
int temp;
for(int i = 0; i < dupeSplit.length; i++){
temp = Integer.parseInt(dupeSplit[i]);
unDupe[i] = temp; // line 33
}
}
后
你没有分配的数组的任何元素。 – OldProgrammer 2014-10-08 20:41:20
Java数组的长度固定,创建后不能更改大小。如果你不知道你需要的最大长度,你可能需要为“最糟糕的情况”分配数组,或者使用类似ArrayList的非固定长度的东西。 – 2014-10-08 20:45:51