Zum Hauptinhalt springen
Veröffentlicht am

break und continue in Go

Teilen:

Einführung

Die Sprache Go bietet, wie viele andere Programmiersprachen, eine Vielzahl von Werkzeugen zur Steuerung des Ausführungsflusses von Code. Darunter spielen die Schlüsselwörter break und continue eine entscheidende Rolle, insbesondere wenn wir mit Schleifen arbeiten.

break verstehen

break ist nicht auf Go beschränkt; es hat seinen Ursprung in früheren Sprachen und ist Entwicklern in vielen Kontexten weithin bekannt. Seine Hauptaufgabe ist:

  • Die innerste Schleife sofort zu beenden, egal ob for, switch oder select.

Sehen wir uns ein praktisches Beispiel an, um seine Funktionsweise zu veranschaulichen:

for i := 0; i < 10; i++ {
    if i == 5 {
        break
    }
    fmt.Println(i)
}

Im obigen Code gibt die Schleife die Zahlen von 0 bis 4 aus. Wenn i den Wert 5 erreicht, wird die Ausführung der Schleife unterbrochen.

Die Tiefe von continue

continue hingegen verfolgt einen etwas anderen Ansatz:

  • Es beendet die aktuelle Iteration und wechselt direkt zur nächsten Iteration der Schleife.

Erkunden wir ein Szenario, in dem dies nützlich sein kann:

for i := 0; i < 10; i++ {
  if i%2 == 0 {
    continue
  }

  fmt.Println(i)
}

Hier möchten wir nur ungerade Zahlen ausgeben. Wenn wir also auf eine gerade Zahl treffen (i%2 == 0), verwenden wir continue, um die Ausgabe zu überspringen und mit der nächsten Iteration fortzufahren.

Gemeinsame Verwendung von break und continue

In manchen Situationen kann es notwendig sein, beide zusammen zu verwenden. Stell dir vor, du möchtest eine Liste von Zahlen durchlaufen und die Schleife beim Auffinden einer bestimmten Zahl abbrechen, aber auch bestimmte Zahlen überspringen.

for i := 0; i < 20; i++ {
  if i%2 == 0 {
    continue
  }

  if i == 15 {
    break
  }

  fmt.Println(i)
}

In diesem Beispiel überspringen wir weiterhin gerade Zahlen, beenden die Schleife aber auch vollständig, wenn i gleich 15 ist.

Fazit

Die Beherrschung von break und continue in Go kann viele Herausforderungen im Zusammenhang mit der Flusskontrolle innerhalb von Schleifen vereinfachen. Wenn du tiefgreifend verstehst, wie und wann diese Schlüsselwörter einzusetzen sind, kannst du deinen Code nicht nur lesbarer machen, sondern auch die Ausführungslogik deines Programms optimieren.

Happy coding!