Оператор continue
Оператор continue прерывает текущую итерацию цикла
и немедленно переходит к следующей итерации. В отличие
от оператора break, который полностью завершает цикл,
continue лишь пропускает оставшийся код текущей итерации.
Оператор можно применять в циклах for, for-each,
while и do-while. Также существует метка,
позволяющая указать, к какой именно итерации внешнего цикла
нужно перейти.
Синтаксис
continue;
Синтаксис с меткой:
continue labelName;
Пример
Давайте пропустим чётные числа от 1 до 5
и выведем только нечётные:
public class Main
{
public static void main(String[] args)
{
for (int i = 1; i <= 5; i++) {
if (i % 2 == 0) {
continue;
}
System.out.println(i);
}
}
}
Результат выполнения кода:
1
3
5
Пример
Давайте пропустим строку "b" при переборе списка
и выведем остальные элементы:
import java.util.List;
public class Main
{
public static void main(String[] args)
{
List<String> res = List.of("a", "b", "c", "d", "e");
for (String el : res) {
if (el.equals("b")) {
continue;
}
System.out.println(el);
}
}
}
Результат выполнения кода:
"a"
"c"
"d"
"e"
Пример
Давайте используем метку, чтобы пропустить итерацию внешнего цикла при выполнении условия во внутреннем:
public class Main
{
public static void main(String[] args)
{
outer:
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 3; j++) {
if (j == 2) {
continue outer;
}
System.out.println(i + " " + j);
}
}
}
}
Результат выполнения кода:
1 1
2 1
3 1