Słowo kluczowe break
może występować w dwóch formach:
- forma samodzielna, bez etykiety
- wskazanie etykiety, która ma zostać wywołania
Słowo kluczowe break
bez etykiety
Samodzielne słowo break
może zostać użyte tylko w kontekście pętli (for
, while
, do-while
) oraz konstrukcji switch
.
W przypadku pętli powoduje natychmiastowe przerwanie jej wykonywania i przejście do wykonywania nasŧpnej instrukcji po zakończeniu pętli. W przypadku wywołania polecenia wewnątrz wewnętrznej pętli, zostanie przerwane wykonywanie tylko pętli wewnętrznej.
1 2 3 4 5 6 7 8 9 10 11 12 |
Użycie break
w linii 7 w powyższym kodzie spowoduje przejście aplikacji do wykonywania kody w linii 11 (czyli ciągle wewnątrz pierwszej pętli).
Także break
jest niezastąpione podczas używania konstrukcji switch
:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Co zostanie wydrukowane po uruchomieniu powyższego fragmentu kodu? Zaskoczenia żadnego nie będzie:
Czyli zostanie wywołana linia 9
, a następnie nastąpi opuszczenie całej konstrukcji switch
.
Ale oto co zostanie wypisane na ekranie, jeżeli zmienimy przypisanie int test = 4
:
Zero
Jeden
Ponieważ wartość 4
nie ma żadnego przypadku opisanego w switch
więc jest wykonywany blok wejścia default
. I następnie kod jest wykonywany aż do pierwszego napotkanego słowa break
lub też końca konstrukcji switch
.
Słowo kluczowe break
z etykietą
Istnieje także możliwość podania etykiety po słowie kluczowym break
. Konstrukcja to może zostać użyta do zakończenia każdego bloku oznaczonego daną etykietą. Powoduje przejście wykonywania kodu do pierwszej instrukcji następującym po danym bloku kodu oznaczonym etykietą:
1 2 3 4 5 6 7 |
Po wykonaniu powyższego kodu zostanie wydrukowana tylko pojedyncza linia:
Tę wersję konstrukcji break
często używa się w połączeniu z zagnieżdżonymi pętlami, pozwala na opuszczenie całej ich struktury bez kłopotliwych testów na poszczególnych jej poziomach.