Ir a la siguiente iteración en For Loop en Java


Respuestas:


344
continue;

continue; la palabra clave comenzaría la próxima iteración tras la invocación

Por ejemplo

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

Esto imprimirá

0134

Ver


2
y breakse saltará el bucle :)
Shajeel Afzal

18
Más bien, la palabra clave 'break' terminaría el ciclo.
ladrón

56

Prueba esto,

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.

p.ej:

Seguir

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

    if (i==2){

      continue;
    }
 }

p.ej:

descanso

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

        if (i==2){

          break;
        }
     }

p.ej:

romper con la etiqueta

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

        if (i==2){

          break lab1;
        }
     }
  }

55
También hay continuar con la etiqueta.
Carcamano

35

Si desea omitir la iteración actual, use continue;.

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

¿Necesitas salir de todo el circuito? Utilizarbreak;

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

Si necesita salir de más de un ciclo, use 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;
        }
     }
  }

* Tenga en cuenta que en este caso no está marcando un punto en el código para saltar, ¡está etiquetando el bucle! Entonces, después del descanso, el código continuará justo después del ciclo.

Cuando necesita omitir una iteración en el uso de bucles anidados continue someLabel;, pero también puede combinarlos todos.

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

Como se menciona en todas las otras respuestas, la palabra clave continuesaltará al final de la iteración actual.

Además, puede etiquetar sus inicios de bucle y luego usar continue [labelname];o break [labelname];controlar lo que está sucediendo en bucles anidados:

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();
}

3

Usa la continuepalabra clave. Lea aquí .

La instrucción continue omite la iteración actual de un ciclo for, while o do-while.


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.