break / continue
break прерывает цикл, continue переходит к следующему шагу; метка позволяет выйти из вложенного цикла.
Доступно с: Java 1.0
Синтаксис
break; continue; break label;Примеры
Пропуск и выход:
void main() {
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue;
}
if (i > 7) {
break;
}
IO.println(i);
}
}Результат:
1
3
5
7Метка — выход сразу из двух циклов:
void main() {
int[][] grid = {{1, 2, 3}, {4, 5, 6}};
outer:
for (int[] row : grid) {
for (int value : row) {
if (value == 5) {
IO.println("found 5");
break outer;
}
IO.println("checked " + value);
}
}
}Результат:
checked 1
checked 2
checked 3
checked 4
found 5Примечания
Обычный break выходит только из самого внутреннего цикла или switch. Метка — имя с двоеточием перед циклом; continue outer переходит к следующему шагу внешнего цикла. Если меток становится много, вложенный цикл лучше вынести в метод и выходить через return.
См. также
- for — Цикл со счётчиком или перебор всех элементов массива и коллекции (for-each).
- while / do-while — Повторяет блок, пока условие истинно; do-while выполняет его хотя бы один раз.
- switch — Выбирает ветку по значению; в форме выражения возвращает результат.
В учебнике
- Управление циклом — Операторы break и continue в Java, выход из вложенных циклов через метки и цикл с выходом из середины.