Pokemon Dont Go - IndexOutOfBoundsException
Решавам задачата по по-различен начин от варианта на упражнението. Не мога да разреба защо когато искам да махна последния член на листа ми дава - IndexOutOfBoundsException.
Примерно, ако имам лист от 1,2,3,4,5 и дам да се махне 4 индекс (5) получавам IndexOutOfBoundsException: Index: 4, Size: 4
Това ми е кода
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class switchtrain {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<Integer> numbers = Arrays.stream(scanner.nextLine().split(" ")).map(Integer::valueOf).collect(Collectors.toList());
int sum = 0;
int input = Integer.parseInt(scanner.nextLine());
while (numbers.size() >= 0) {
int num = numbers.get(input);
sum += num;
numbers.remove(input);
if (input > numbers.get(input)) {
for (int j = 0; j < numbers.size(); j++) {
int a = numbers.get(j) - num;
numbers.set(j, a);
}
} else {
for (int j = 0; j < numbers.size(); j++) {
int a = numbers.get(j) + num;
numbers.set(j, a);
}
}
System.out.println(numbers);
System.out.println(sum);
input = Integer.parseInt(scanner.nextLine());
}
}
}