Исключение Netbeans в потоке "main" java.lang.IndexOutOfBoundsException: индекс: 2, размер: 2 - PullRequest
0 голосов
/ 11 декабря 2018

У меня странная ошибка при выполнении проекта Java на Netbeans.У меня есть следующая функция, которая выполняется в основном:

public ArrayList<String> getPlayersName(){
    ArrayList<String> list = new ArrayList<>();
    int players;

    System.out.println("Number of players:");
    players = in.nextInt();

    for(int i=0; i<players; i++){
        System.out.println("Player name:");
        String s = in.next();
        list.add(s);
    }

    return list;
}

Когда я выполняю проект, я получаю следующие ошибки:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
at java.util.ArrayList.rangeCheck(ArrayList.java:657)
at java.util.ArrayList.get(ArrayList.java:433)

Вводимый мной ввод такой же простой, как: 2, а, б.Любопытно, что иногда при одинаковых аргументах программа выполняется нормально.

Основная программа:

public static void main(String args[]) {
    QytetetTextView ui = new QytetetTextView();
    controller.setPlayersName(ui.getPlayersName());

    int chosenOp, casillaElegida = 0;
    boolean needChooseBox;
    do {
        chosenOp = ui.elegirOperacion();
        System.out.println(controller.getEstado());
        needChooseBox = controller.needChoseBox(chosenOp);
        if (needChooseBox)
            casillaElegida = ui.chooseBox(chosenOp);
        if (!needChooseBox || chosenBox >= 0)
            System.out.println(controlador.runOp(chosenOp, chosenBox));
    } while (1 == 1);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...