private static void rescueRobots() {
for (Robot robot : cableContents) {
if (robot.getName().equals("Amigo") || robot.getName().equals("Diego")) {
rescuedRobots.add(robot);
cableContents.remove(robot);
}
}
}//напишите тут ваш код
Aleksandr
17 уровень
Почему такой код вызывает ошибку?
Архивный
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Ars_Lay_
13 апреля 2023, 19:10
надо вынести метод .remove() за цикл
0
Nikita
25 марта 2023, 16:35
Из стандартных коллекций нельзя удалять элементы по время итерации при помощи цикла for each. В вашем случае проще всего использовать стандартный цикл for так же, как при работе с массивами, или почитать про ListIterator. Вот ссылка на ресурс, где этот вопрос рассмотрен более подробно.
+1
Kirill Komarov
25 марта 2023, 16:22
исправь на обычный for и заработает
+1
Захаров Анатолий
25 марта 2023, 14:39
Насколько я помню из лекций, в операторе for each нельзя удалять элементы. Поэтому, сначала надо добавить Диего и Амиго в список спасенных, а потом после этого цикла удалить из списка cableContents.
+1