English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Artikel werden Sie lernen, wie Sie den Break-Befehl verwenden, um die Kontrolle des Programms zu übernehmen.
Bei der Verwendung von Loops oder Bedingungsanweisungen kann es notwendig sein, bestimmte Anweisungen im Loop zu überspringen oder den Loop sofort abzubrechen, ohne die Testausdrücke zu überprüfen
In diesem Fall werden die Break- und continue-Anweisungen verwendet. Sie werden im nächsten Kapitel lernen continue-Anweisung.
Der Break-Befehl stoppt die Ausführung des Loops oder des Switch-Statements. Anschließend springt er zur nächsten Anweisung nach dem Loop oder Switch-Statement.
Die Syntax des Break-Befehls lautet:
break
für i in 1...5 { if i == 4 { break } print("i = \(i)") } print("Das Ende")
Wenn Sie dieses Programm ausführen, wird die Ausgabe sein:
i = 1 i = 2 i = 3 The end
Ende1Im obigen Programm ist der Bereich der zu durchlaufenden Sequenz5.
bis1i wird auf den Bereich gesetzt(range(
) wird der erste Wert der Zahl, und er wird bei jedem Durchlauf auf den nächsten Wert im Bereich aktualisiert.4Der Zyklus enthält auch einen if-Befehl, der Ausdruck ist i==4. Wenn die Ausdrucksbedingung true ist (im-beendet den Zyklus im nächsten Durchlauf. Ausführung der break-Anweisung, für
dann springt es nach außen, um auszugeben Ende.
var currentLevel: Int = 1, finalLevel: Int = 2 var isLifeAvailable = true while (isLifeAvailable) { if currentLevel > finalLevel { print("Spiel beendet, keine Level mehr") break } //Spiel spielen, ins nächste Level gehen currentLevel += 1 print("Nächstes Level") } print("Außerhalb des While-Zyklus")
Wenn Sie dieses Programm ausführen, wird die Ausgabe sein:
Nächstes Level Nächstes Level Spiel beendet, keine Level mehr Außerhalb des While-Zyklus
Im obigen Programm ist der Testausdruck des while-Zyklus immer true.
Wenn currentLevel größer als finalLevel ist, wird die break-Anweisung im if-Block ausgeführt. Dann verlässt das Programm (beendet) den while-Zyklus und führt nach dem Zyklus die nächsten Anweisungen aus, d.h. print("Außerhalb des While-Zyklus")..
für j in 1...2 { für i in 1...5 { if i == 4 { break } print("i = \(i)") } print("j = \(j)") }
Wenn Sie dieses Programm ausführen, wird die Ausgabe sein:
i = 1 i = 2 i = 3 j === 1 i = 1 i = 2 i = 3 j === 2
Im obigen Programm, wenn i === 4 Ein break im Innern beendet nur for i in 1...5 Ausführung des inneren Zykels. Aber es führt weiterhin den Außenzyklus for j in aus 1...2 .
Aber wenn Sie auch den Außenzyklus breaken möchten for j in 1...2Also, wir verwenden in Swift Label-Anweisungen.
Anweisungen im Format (label: Statement) werden als Label-Anweisungen bezeichnet. Ein Label ist ein Identifikator, den Sie später in break- oder continue-Anweisungen referenzieren können.
Hier ist label ein Identifikator. Wenn die break-Anweisung ausgeführt wird, wird der innere Zyklus label beendet und das Programm springt sofort zur nächsten Anweisung hinter der mit dem Label versehenen Anweisung.
outerloop: für j in 1...2{ innerloop: für i in 1...5 { if i == 4 { break outerloop } print("i = \(i)") } print("j = \(j)") }
Wenn Sie dieses Programm ausführen, wird die Ausgabe sein:
i = 1 i = 2 i = 3
In dem obigen Programm gibt es zwei markierte Anweisungen outerloop: for j in 1...2 und innerloop: for i in 1...5.
Die Namen der Labels outerloop und innerloop können mit dem break-Befehl verwendet werden.
Dieser Befehl break outerloop beendet zwei Schleifen und beendet das Programm.
Wenn Sie andere Programmiersprachen wie C, C ++,Java usw., verwenden Sie den break-Befehl, um den switch-Befehl abzubrechen. Ancak Swift'te, die switch-Anweisung wird sofort abgeschlossen, wenn der erste passende switch-Fall abgeschlossen ist. Daher ist das Hinzufügen von break in den Swift-switch-Fällen optional. Weitere Informationen finden Sie unterSwift switch-Anweisung.