GoTo Next Iteration in For-Schleife in Java


Antworten:


343
continue;

continue; Das Schlüsselwort würde die nächste Iteration beim Aufruf starten

Beispielsweise

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

Dies wird gedruckt

0134

Sehen


2
und breakwird die Schleife überspringen :)
Shajeel Afzal

18
Das Schlüsselwort "break" würde die Schleife beenden.
Schurkenjunge

56

Versuche dies,

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.

z.B:

fortsetzen

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

    if (i==2){

      continue;
    }
 }

z.B:

brechen

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

        if (i==2){

          break;
        }
     }

z.B:

mit Etikett brechen

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

        if (i==2){

          break lab1;
        }
     }
  }

5
Es gibt auch weiter mit Etikett.
Carcamano

35

Wenn Sie die aktuelle Iteration überspringen möchten, verwenden Sie continue;.

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

Müssen Sie aus der gesamten Schleife ausbrechen? Verwendenbreak;

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

Wenn Sie aus mehr als einer Schleife ausbrechen müssen, verwenden Sie 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;
        }
     }
  }

* Beachten Sie, dass Sie in diesem Fall keinen Punkt im Code markieren, zu dem Sie springen möchten, sondern die Schleife beschriften! Nach der Pause wird der Code also direkt nach der Schleife fortgesetzt!

Wenn Sie eine Iteration in verschachtelten Schleifen überspringen müssen, verwenden Sie diese continue someLabel;, aber Sie können sie auch alle kombinieren.

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

Wie in allen anderen Antworten erwähnt, springt das Schlüsselwort continuezum Ende der aktuellen Iteration.

Zusätzlich können Sie Ihre Schleifenstarts beschriften und dann verwenden continue [labelname];oder break [labelname];steuern, was in verschachtelten Schleifen vor sich geht:

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

Verwenden Sie das continueSchlüsselwort. Lesen Sie hier .

Die continue-Anweisung überspringt die aktuelle Iteration einer for-, while- oder do-while-Schleife.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.