Das Java fährt fort und bricht Schlüsselwörter

1. Übersicht

In diesem Artikel schnell, werden führen wir weiter und brechen Java Keywords und darauf konzentrieren, wie sie in der Praxis anzuwenden.

Einfach ausgedrückt bewirkt die Ausführung dieser Anweisungen eine Verzweigung des aktuellen Kontrollflusses und beendet die Ausführung des Codes in der aktuellen Iteration.

2. Die break- Anweisung

Die break- Anweisung gibt es in zwei Formen: unbeschriftet und beschriftet.

2.1. Unbeschriftete Pause

Wir können die unbeschriftete Anweisung verwenden, um eine for- , while- oder do-while- Schleife sowie den switch-case- Block zu beenden :

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

Dieses Snippet definiert eine for- Schleife, die fünfmal iteriert werden soll. Wenn der Zähler gleich 3 ist, wird die if- Bedingung wahr und die break- Anweisung beendet die Schleife. Dadurch wird der Kontrollfluss in die Anweisung übertragen, die nach dem Ende der for- Schleife folgt .

Bei verschachtelten Schleifen beendet eine unbeschriftete break- Anweisung nur die innere Schleife, in der sie sich befindet . Äußere Schleifen setzen die Ausführung fort:

for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (colNum == 3) { break; } } }

Dieses Snippet ist für Schleifen verschachtelt . Wenn colNum gleich 3 ist, bewirkt die if- Bedingung true und die break- Anweisung bewirkt, dass die innere for- Schleife beendet wird. Die äußere for- Schleife iteriert jedoch weiter.

2.2. Beschriftete Pause

Wir können auch eine markierte verwenden Pause Anweisung ein kündigen für , während oder do-while - Schleife. Eine markierte Unterbrechung beendet die äußere Schleife .

Bei Beendigung wird der Kontrollfluss unmittelbar nach dem Ende der äußeren Schleife auf die Anweisung übertragen:

compare: for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (rowNum == 1 && colNum == 3) { break compare; } } }

In diesem Beispiel haben wir kurz vor der äußeren Schleife ein Label eingeführt. Wenn rowNum gleich 1 und colNum gleich 3 ist, wird die if- Bedingung als true ausgewertet und die break- Anweisung beendet die äußere Schleife.

Der Kontrollfluss wird dann auf die Anweisung nach dem Ende der äußeren for- Schleife übertragen.

3. Die continue- Anweisung

Die continue- Anweisung gibt es auch in zwei Formen: unbeschriftet und beschriftet.

3.1. Unbeschriftet weiter

Wir können eine unbeschriftete Anweisung verwenden, um die Ausführung der restlichen Anweisungen in der aktuellen Iteration einer for- , while- oder do-while- Schleife zu umgehen . Es springt zum Ende der inneren Schleife und setzt die Schleife fort :

int counter = 0; for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (colNum != 3) { continue; } counter++; } }

In diesem Schnipsel, wann immer SpaltenNr nicht gleich 3 ist, die nicht - markierten weiterhin überspringt Anweisung die aktuelle Iteration, also das Inkrements des Variablen Umgehung Zählers in dieser Iteration. Die äußere for- Schleife iteriert jedoch weiter. Das Inkrement des Zählers erfolgt also nur, wenn colNum in jeder Iteration der äußeren for- Schleife gleich 3 ist .

3.2. Beschriftet weiter

Wir können auch eine beschriftete continue- Anweisung verwenden, die die äußere Schleife überspringt. Beim Überspringen wird der Kontrollfluss an das Ende der äußeren Schleife übertragen, wodurch die Iteration der äußeren Schleife effektiv fortgesetzt wird:

int counter = 0; compare: for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (colNum == 3) { counter++; continue compare; } } }

Wir haben kurz vor der äußeren Schleife ein Etikett eingeführt. Immer wenn colNum gleich 3 ist, wird der variable Zähler inkrementiert. Die beschriftete continue- Anweisung bewirkt, dass die Iteration der äußeren for- Schleife übersprungen wird.

Der Kontrollfluss wird an das Ende der äußeren for- Schleife übertragen, die mit der nächsten Iteration fortgesetzt wird.

4. Fazit

In diesem Tutorial haben wir verschiedene Möglichkeiten gesehen, die Schlüsselwörter break und continue als Verzweigungsanweisungen in Java zu verwenden.

Der vollständige Code in diesem Artikel ist auf GitHub verfügbar.