Могу ли я изменить состояние петли, находясь в ней? - PullRequest
0 голосов
/ 23 июня 2019

Я запускаю цикл for, и условие зависит от размера списка, в некоторых случаях внутри цикла for размер списка может быть изменен (элемент get remove), у меня есть «вне индекса»"ошибка, и я подозреваю, что это из-за этого.

Это нормальная практика в Java?

1 Ответ

0 голосов
/ 23 июня 2019

Предполагая, что этот вопрос означает, что если у вас есть цикл, как

 for (int j=0; j<n; j++) {
    doStuff;
 }

тогда может 'doStuff' изменить значение 'n' - тогда да, это может. Выражение вычисляется каждый раз вокруг цикла.

Если это не ваше значение, уточните или отправьте код, демонстрирующий проблему.

Я подозреваю, что вы можете столкнуться с проблемой, выходящей за пределы допустимого диапазона, - это то, что изменение коллекции при ее повторении должно выполняться осторожно. Прочитайте документацию по вашей коллекции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...