Предоставление имени цикла
Во время просмотра вопросов и ответов на этом форуме я обнаружил, что часть кода была указана на циклы, чтобы использовать их для разрыва. Как
nameofloop:
for(){
for(){
if(){ break nameofloop;}
}
}
Я новый для программирования, и я не видел этого раньше. Мой вопрос заключается в том, что есть другие способы использования циклов имен?
Ответы
Ответ 1
Это не помеченный цикл, это всего лишь ярлык, который вы размещаете в любом месте, а затем вы можете "сломать" или "продолжить" в зависимости от ваших условий. Вы также можете использовать в вложенных if-else с циклами, чтобы разбить несколько циклов, украшенных if-else, поэтому вы можете избежать установки множества флагов и тестирования их в if-else, чтобы продолжить или нет в этом вложенном уровень.
Его использование не рекомендуется, как напоминающее goto, и вызывает спагетти-код.
Лично я использовал только один раз, время назад, чтобы разбить цикл for внутри двух других циклов с if-else и продолжить во внешнем цикле, поскольку break
внутри цикла прерывает этот цикл, но вы продолжаете внешний цикл, а не самый внешний, который был моим случаем.
Ответ 2
Вы также можете сказать:
continue nameofloop;
... перейти к началу именованного цикла. Я не думаю, что есть другие варианты использования ярлыков в Java.
Ответ 3
Он известен как помеченный перерыв, который является формой выражения ветвления. Вы можете увидеть все примеры в Официальная документация.
Ответ 4
Я думаю, что это единственный случай, который он использовал. И это не то, что обычно используется, потому что обычно более читаемо изменять значение флага, чтобы закончить цикл преждевременно.
Ответ 5
Официально, я считаю, что это называется "помеченным перерывом". Это полезно для выхода из вложенных циклов, например:
found:
for (int i = 0; i < 100; i++)
for (int j = 0; j < 100; i++)
if ( /* Some condition is met */)
break found;
Я не считаю это полезным ни для чего другого.
Ответ 6
-
Создайте массив (int
) размера 10.
-
Позвольте пользователю назначить значения - (использовать for-loop).
-
Найдите общее и среднее значений, хранящихся в массиве, - (используйте for-loop).