Перейти к следующей итерации в цикле For в Java

Ответы:

345
continue;

continue; ключевое слово запускает следующую итерацию при вызове

Например

for(int i= 0 ; i < 5; i++){
 if(i==2){
  continue;
 }
System.out.print(i);
}

Это напечатает

0134

Видеть

Джигар Джоши
источник
2
и breakпропустит цикл :)
Shajeel Afzal
18
Скорее ключевое слово «break» завершит цикл.
жулик
56

Попробуй это,

1. If you want to skip a particular iteration, use continue.

2. If you want to break out of the immediate loop use break

3 If there are 2 loop, outer and inner.... and you want to break out of both the loop from the inner loop, use break with label.

например:

Продолжать

for(int i=0 ; i<5 ; i++){

    if (i==2){

      continue;
    }
 }

например:

перерыв

for(int i=0 ; i<5 ; i++){

        if (i==2){

          break;
        }
     }

например:

порвать с этикеткой

lab1: for(int j=0 ; j<5 ; j++){
     for(int i=0 ; i<5 ; i++){

        if (i==2){

          break lab1;
        }
     }
  }
Кумар Вивек Митра
источник
5
Там также продолжить с лейблом.
Каркамано
35

Если вы хотите пропустить текущую итерацию, используйте continue;.

for(int i = 0; i < 5; i++){
    if (i == 2){
        continue;
    }
 }

Нужно вырваться из всего цикла? использованиеbreak;

for(int i = 0; i < 5; i++){
    if (i == 2){
        break;
    }
}

Если вам нужно вырваться из более чем одного цикла, используйте break someLabel;

outerLoop:                                           // Label the loop
for(int j = 0; j < 5; j++){
     for(int i = 0; i < 5; i++){
        if (i==2){
          break outerLoop;
        }
     }
  }

* Обратите внимание, что в этом случае вы не помечаете точку в коде для перехода, вы помечаете цикл! Так что после перерыва код будет продолжен сразу после цикла!

Когда вам нужно пропустить одну итерацию во вложенных циклах, используйте continue someLabel;, но вы также можете объединить их все.

outerLoop:
for(int j = 0; j < 10; j++){
     innerLoop:
     for(int i = 0; i < 10; i++){
        if (i + j == 2){
          continue innerLoop;
        }
        if (i + j == 4){
          continue outerLoop;
        }
        if (i + j == 6){
          break innerLoop;
        }
        if (i + j == 8){
          break outerLoop;
        }
     }
  }
Нана
источник
8

Как уже упоминалось во всех других ответах, ключевое слово continueбудет пропущено до конца текущей итерации.

Кроме того, вы можете пометить запуск цикла, а затем использовать continue [labelname];или break [labelname];для управления тем, что происходит во вложенных циклах:

loop1: for (int i = 1; i < 10; i++) {
    loop2: for (int j = 1; j < 10; j++) {
        if (i + j == 10)
            continue loop1;

        System.out.print(j);
    }
    System.out.println();
}
Wormbo
источник
3

Используйте continueключевое слово. Читайте здесь .

Оператор continue пропускает текущую итерацию цикла for, while или do-while.

Казекаге Гаара
источник
1

используйте ключевое слово continue .

EX:

for(int i = 0; i < 10; i++){
  if(i == 5){
    continue;
   }
}
Сумит Сингх
источник