0Pricing
Java Academy · Lektion

Labeled continue

Setzen Sie eine äußere Schleife fort.

Labeled continue ist eine kostenlose Java Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Java Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Java Academy-Kurs umfasst insgesamt 4 Lektionen.

Eine äußere Schleife fortsetzen

Ein einfaches continue startet nur die innere Schleife neu. Manchmal möchten Sie stattdessen zum nächsten Durchlauf der äußeren Schleife springen.

Dafür bietet Java ein continue mit Label.

Es verbindet das Label einer Schleife mit dem Schlüsselwort continue, um festzulegen, welche Schleife fortgesetzt wird.

Syntax von continue mit Label

Die Form lautet continue label;, wobei das Label eine umgebende Schleife bezeichnet.

Statt die innere Schleife fortzusetzen, springt die Anweisung zum nächsten Durchlauf der Schleife mit diesem Label.

Alles, was in diesem Durchlauf noch in der inneren Schleife ausgeführt würde, wird übersprungen.

continue outer;  // jump to next iteration of 'outer'

Ein erstes Beispiel

Wenn col den Wert 2 erreicht, setzen wir hier die äußere Schleife mit continue fort.

Dadurch wird der Rest der inneren Schleife abgebrochen und sofort zur nächsten Zeile gewechselt.

public class Main {
    public static void main(String[] args) {
        outer:
        for (int row = 1; row <= 3; row++) {
            for (int col = 1; col <= 3; col++) {
                if (col == 2) {
                    continue outer;
                }
                System.out.println("row " + row + ", col " + col);
            }
        }
    }
}

Die Ausgabe nachvollziehen

In jeder Zeile wurde nur col 1 ausgegeben. Als col den Wert 2 erreichte, sprang continue outer direkt zur nächsten Zeile.

Die Spalten 2 und 3 wurden in keiner Zeile ausgegeben.

In jeder neuen Zeile startete die innere Schleife wieder bei col 1.

continue oder continue mit Label

Vergleichen Sie dies mit einem einfachen continue. Es würde nur col 2 überspringen und col 3 weiterhin ausgeben.

Führen Sie den Code aus und beachten Sie, dass in jeder Zeile sowohl col 1 als auch col 3 erscheinen.

public class Main {
    public static void main(String[] args) {
        for (int row = 1; row <= 3; row++) {
            for (int col = 1; col <= 3; col++) {
                if (col == 2) {
                    continue;
                }
                System.out.println("row " + row + ", col " + col);
            }
        }
    }
}

Der entscheidende Unterschied

Ein einfaches continue überspringt nur den aktuellen Durchlauf der inneren Schleife, die anschließend weiterläuft.

continue outer mit Label bricht die gesamte innere Schleife ab und startet den nächsten Durchlauf der äußeren Schleife.

Dieses eine Label verändert, wie viel Code übersprungen wird.

Eine ganze Zeile überspringen

Ein continue mit Label ist praktisch, wenn ein ungültiger Wert den Rest eines inneren Durchlaufs unbrauchbar machen soll.

Wenn eine Zahl in einer Zeile negativ ist, überspringen wir hier den Rest der Verarbeitung dieser Zeile und fahren mit der nächsten fort.

public class Main {
    public static void main(String[] args) {
        int[][] data = {{1, 2, 3}, {4, -1, 6}, {7, 8, 9}};
        rows:
        for (int r = 0; r < data.length; r++) {
            int sum = 0;
            for (int c = 0; c < data[r].length; c++) {
                if (data[r][c] < 0) {
                    System.out.println("Row " + r + " skipped");
                    continue rows;
                }
                sum += data[r][c];
            }
            System.out.println("Row " + r + " sum = " + sum);
        }
    }
}

Dieses Beispiel nachvollziehen

Für die Zeilen 0 und 2 wurden die Summen ausgegeben. In Zeile 1 wurde ein negativer Wert gefunden, „Row 1 skipped“ ausgegeben und zur nächsten Zeile gesprungen.

Wichtig ist, dass die Summenzeile für Zeile 1 nie ausgeführt wurde, weil continue mit Label darüber hinweggesprungen ist.

Paare filtern

Eine weitere Verwendung besteht darin, ein gesamtes äußeres Element zu überspringen, sobald eine innere Bedingung nicht erfüllt ist.

Diese Schleife gibt Paare aus, überspringt aber jedes i, dessen Produkt mit j größer als 6 wäre.

public class Main {
    public static void main(String[] args) {
        loopI:
        for (int i = 1; i <= 3; i++) {
            for (int j = 1; j <= 3; j++) {
                if (i * j > 6) {
                    continue loopI;
                }
                System.out.println(i + " x " + j + " = " + (i * j));
            }
        }
    }
}

Namen und Platzierung von Labels

Die Schleife mit dem Label muss die continue-Anweisung umschließen. Sie können nicht mit continue zu einem Label springen, das nicht oberhalb der Anweisung steht.

Wählen Sie aussagekräftige Namen wie rows oder loopI, damit Leser erkennen, welche Schleife fortgesetzt wird.

Ein klares Label ist bereits eine Dokumentation für sich.

Wann es hilft und wann es schadet

Ein continue mit Label hilft, wenn eine Bedingung den Rest eines inneren Durchlaufs ungültig machen und die Verarbeitung fortsetzen soll.

Übermäßig viele Labels erschweren jedoch das Nachvollziehen des Ablaufs. Wenn ein einfaches continue oder eine frühe Rückgabe aus der Methode verständlicher ist, bevorzugen Sie diese Variante.

Verwenden Sie Labels nur dort, wo sie tatsächlich für mehr Klarheit sorgen.

Kurze Überprüfung

Sagen Sie voraus, welche Wirkung ein continue mit Label hat.

Zusammenfassung

continue label; überspringt den Rest der inneren Schleife und setzt die benannte äußere Schleife mit ihrem nächsten Durchlauf fort.

Es unterscheidet sich von einem einfachen continue, das nur einen Durchlauf der inneren Schleife überspringt. Verwenden Sie Labels, wenn sie die Logik mehrerer Schleifen verständlicher machen, nicht nur kürzer.

Häufig gestellte Fragen

Ist die Lektion „Labeled continue“ kostenlos?

Ja — der vollständige Text von „Labeled continue“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Java Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Java Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Labeled continue“?

Setzen Sie eine äußere Schleife fort. Du übst Java Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Java Academy zu starten?

Keine Vorkenntnisse erforderlich. Java Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Labeled continue“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Java Academy-Lektion Code schreiben und ausführen?

Ja. Jede Java Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. break und continue
  2. Labeled break
  3. Labeled continue
  4. Spaghetti-Abläufe vermeiden
← Zurück zu Java Academy