Оператор continue в Java: управление потоком циклов с примерами
Оператор continue в Java
Это руководство объясняет операторы continue и помеченный continue в Java с наглядными примерами для эффективного управления потоком циклов.
Работая с циклами, иногда нужно пропустить определенные операторы или завершить итерацию раньше времени. В таких случаях используются операторы break и continue.
Об операторе break читайте в Java break. Здесь мы фокусируемся на continue.
Оператор continue в Java
Оператор continue пропускает текущую итерацию цикла (for, while, do…while и др.). После continue программа переходит к проверке условия завершения цикла (и для for — к выражению обновления).
Синтаксис:
continue;
Примечание: Оператор continue чаще всего используется внутри условных блоков (например, if).
Принцип работы continue

Пример 1: Оператор continue в Java
class Main {
public static void main(String[] args) {
// цикл for
for (int i = 1; i <= 10; ++i) {
// если i между 4 и 9
// выполняется continue
if (i > 4 && i < 9) {
continue;
}
System.out.println(i);
}
}
}
Вывод:
1 2 3 4 9 10
В программе цикл for выводит значение i на каждой итерации. Оператор continue срабатывает, когда i больше 4 и меньше 9, из-за чего println пропускается для 5, 6, 7, 8.
Пример 2: Вычисление суммы 5 положительных чисел
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Double number, sum = 0.0;
// создаем объект Scanner
Scanner input = new Scanner(System.in);
for (int i = 1; i < 6; ++i) {
System.out.print("Введите число " + i + " : ");
// считываем ввод пользователя
number = input.nextDouble();
// если число отрицательное или ноль
// выполняется continue
if (number <= 0.0) {
continue;
}
sum += number;
}
System.out.println("Сумма = " + sum);
input.close();
}
}
Вывод:
Введите число 1: 2.2 Введите число 2: 5.6 Введите число 3: 0 Введите число 4: -2.4 Введите число 5: -3 Сумма = 7.8
Здесь continue пропускает любой отрицательный или нулевой ввод, обеспечивая суммирование только положительных значений.
Примечание: Мы использовали класс Scanner для чтения ввода. Подробнее: Java Scanner.
Continue во вложенных циклах
Когда циклы вложены, continue внутри внутреннего цикла влияет только на текущую итерацию этого внутреннего цикла.

Пример 3: continue во вложенных циклах
class Main {
public static void main(String[] args) {
int i = 1, j = 1;
// внешний цикл
while (i <= 3) {
System.out.println("Внешний цикл: " + i);
// внутренний цикл
while(j <= 3) {
if(j == 2) {
j++;
continue;
}
System.out.println("Внутренний цикл: " + j);
j++;
}
i++;
}
}
}
Вывод
Внешний цикл: 1 Внутренний цикл: 1 Внутренний цикл: 3 Внешний цикл: 2 Внешний цикл: 3
В примере continue внутри внутреннего цикла пропускает итерацию, когда j равно 2, предотвращая вывод «Внутренний цикл: 2».
Помеченный оператор continue
Помимо базового continue, Java поддерживает помеченную версию, направляющую поток к конкретному циклу. Синтаксис:
continue label;
Это заставляет программу пропустить текущую итерацию цикла, идентифицированного label.

На иллюстрации метка указывает на внешний цикл, демонстрируя, как continue может пропустить всю итерацию этого цикла.
Пример 4: Помеченный continue
class Main {
public static void main(String[] args) {
// внешний цикл помечен как first
first: for (int i = 1; i < 6; ++i) {
// внутренний цикл
for (int j = 1; j < 5; ++j) {
if (i == 3 || j == 2)
// пропускает текущую итерацию внешнего цикла
continue first;
System.out.println("i = " + i + "; j = " + j);
}
}
}
}
Вывод:
i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
Здесь labeled continue переходит к следующей итерации цикла first всякий раз, когда i равно 3 или j равно 2.
Примечание: Помеченный continue может быть мощным, но часто снижает читаемость. При такой необходимости рассмотрите рефакторинг для сохранения ясности потока.
java
- Оператор continue в C#: как эффективно пропускать итерации циклов
- Освоение оператора continue в C++: практические примеры и управление циклами
- Мастерство управления циклами в Python: break и continue
- Освоение операторов Java: типы, синтаксис и практические примеры
- Освоение улучшенного цикла for в Java: синтаксис, примеры и лучшие практики
- Интерфейсы в Java: концепции, реализация и лучшие практики
- Try-with-resources в Java: автоматическое управление ресурсами
- Аннотации в Java: типы, размещение и практические примеры
- Java-программа для идентификации чисел Армстронга с использованием for-цикла
- Освоение циклов Python: for, while, break, continue и enumerate