Я получаю сообщение об ошибке Исключение из потока "main" java.lang.ArrayIndexOutOfBoundsException: 0 at sorting.main (sorting.java:53). Я просто пытаюсь передать строковые целочисленные значения в целочисленный массив, но он не работает должным образом. У меня есть переменные выше, такие как count
, который определяется количеством целых чисел, которые пользователь хочет ввести. В и другой переменной int[] list = new int[count];
, которая является целым массивом, к которому я пытаюсь их передать. Если я ввожу значение 5
для подсчета, я пытаюсь принять только 5 значений целых чисел. Передача их в массив int[] list
- это то место, где я запутался.Java Array Index Out of Bounds Exception
// Prompts user to enter the integer values here
while(true){
System.out.print("\nEnter integer values here seperated by a space: ");
intValues = input.readLine();
String[] intCheck = intValues.split("\\s+");
try {
for(int j = 0; j < intCheck.length; j++){
list[j] = Integer.parseInt(intCheck[j]); // LINE 53 IS HERE
}
}
catch (NumberFormatException ex) {
System.err.println("You need to enter valid integer numbers. Try again.");
}
}
Ваш массив 'intCheck' больше, чем массив' list'. Это все. –
Покажите нам свою декларацию 'list' и возьмите' ArrayList' не 'Int Array', так что он будет динамически увеличивать его размер. – Babel
Я не понимаю, как –