Я не знаю, как решить эту ошибку "ArrayIndexOutOfBoundsException" - PullRequest
0 голосов
/ 11 декабря 2018

я создал вложенный цикл для реализации целых чисел в моем массиве String:

int ı = 0;

    String[] haha = new String[sizeFinder(numbers)];

    for (int q = 0; q < sizeFinder(numbers);) {

        for (ı = Integer.parseInt(numara[q]);; ı = Integer.parseInt(numara[q])) {

            haha[q] = ofanamof(Arrays.toString(convertDectoB(ı, sizeFinder(numbers))));

            q++;

        }

    }

Вот проблема: "sizeFinder (numbers)" равен 3 в этой ситуации.во втором цикле for я увеличиваю значение «q» одно за другим для реализации значений в массив «haha [q]».Но в итоге «q» равно 3, и в коде нет значения «numara [3]».Выдает ошибку: java.lang.ArrayIndexOutOfBoundsException: индекс 3 выходит за пределы длины 3

. Как я могу решить эту проблему?Как я могу остановить значение "q" на 2?

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Вот ответ.Спасибо всем, кто помог.

int ı = 0;

String[] haha = new String[sizeFinder(numbers)];

for (int q = 0; q < sizeFinder(numbers); q++) {
    ı= Integer.parseInt(numara[q]) ;
    haha[q] = ofanamof(Arrays.toString(convertDectoB(ı, sizeFinder(numbers))));
}
0 голосов
/ 11 декабря 2018

Похоже, вы совсем новичок в программировании, поэтому первое, что я бы порекомендовал вам, это правильно понять, как работает for.

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html

, это официальная документация для отoracle.

В используемом типе вы должны описать 3 параметра:

for ([1]; [2]; [3]) {
    your code;
} 

[1] инициализация переменной цикла, например, "int i = 0"

[2] условие завершения до того момента, когда цикл должен повторяться (это условие проверяется каждый раз, когда выполняется код в скобках {})

[3] как изменить переменную цикла дляпример "++ i" или "--i" (увеличение и уменьшение i на 1 единицу).Он будет выполняться сразу после [2] каждый раз, когда код в скобках будет готов.

Надеюсь, это поможет!

...