V tej vadnici se boste naučili uporabljati break za prekinitev zanke. Spoznali boste tudi oznake prekinitev.
Recimo, da delate z zankami. Včasih je zaželeno, da zanko takoj prekinemo, ne da bi preverili testni izraz.
V takem primeru break
se uporablja. Ko naleti na najbližjo zaprto zanko (brez preverjanja testnega izraza). To je podobno kot izjava break deluje v Javi.
Kako deluje odmor?
Skoraj vedno se uporablja s konstrukcijo if … else. Na primer
za (…) (če (testExpression) (odmor))
Če je testExpression ovrednoten z true
, break
se izvede, kar prekine for
zanko.
Primer: Kotlin odmor
fun main(args: Array) ( for (i in 1… 10) ( if (i == 5) ( break ) println(i) ) )
Ko zaženete program, bo rezultat:
1 2 3 4
Ko je vrednost i enaka 5, se izraz i == 5
znotraj if
izračuna true
in break
izvrši. S tem se prekine zanka for.
Primer: Izračunaj vsoto, dokler uporabnik ne vnese 0
Spodnji program izračuna vsoto številk, ki jih vnese uporabnik, dokler uporabnik ne vnese 0.
Obiščite Kotlin Basic Input Output, če želite izvedeti več o tem, kako uporabiti vnos od uporabnika.
fun main(args: Array) ( var sum = 0 var number: Int while (true) ( print("Enter a number: ") number = readLine()!!.toInt() if (number == 0) break sum += number ) print("sum = $sum") )
Ko zaženete program, bo rezultat:
Vnesite številko: 4 Vnesite številko: 12 Vnesite številko: 6 Vnesite številko: -9 Vnesite številko: 0 vsota = 13
V zgornjem programu je testni izraz while
zanke vedno true
.
Tu se while
zanka izvaja, dokler uporabnik ne vnese 0. Ko uporabnik vnese 0, break
se izvede, kar prekine while
zanko.
Kotlin Označen odmor
Kar ste se doslej naučili, je neoznačena oblika break
, ki zaključuje najbližjo zaprto zanko. Obstaja lahko še en način break
(označena oblika) za prekinitev želene zanke (lahko zunanja zanka).
Kako deluje označeni odmor?
Oznaka v Kotlinu se začne z identifikatorjem, ki mu sledi @
.
Tu je test @ oznaka, označena na zunanji zanki while. Zdaj lahko z uporabo break
oznake ( break@test
v tem primeru) prekinete določeno zanko.
Tu je primer:
fun main(args: Array) ( first@ for (i in 1… 4) ( second@ for (j in 1… 2) ( println("i = $i; j = $j") if (i == 2) break@first ) ) )
Ko zaženete program, bo rezultat:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
Tu se izvede i == 2
izraz , ko se ovrednoti izraz true
, break@first
ki zaključi zanko, označeno z oznako first@
.
Tu je malo različic zgornjega programa.
V spodnjem programu prekinitev prekine zanko, označeno z nalepko @second.
fun main(args: Array) ( first@ for (i in 1… 4) ( second@ for (j in 1… 2) ( println("i = $i; j = $j") if (i == 2) break@second ) ) )
Ko zaženete program, bo rezultat:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1 i = 3; j = 1 i = 3; j = 2 i = 4; j = 1 i = 4; j = 2
Opomba: Ker break
se v tem programu uporablja za zaključek najbolj notranje zanke, v tem primeru ni treba uporabljati označenega premora.
Obstajajo 3 strukturne izrazi skok v KOTLIN: break
, continue
in return
. Če želite izvedeti več o izražanju continue
in return
izražanju, obiščite:
- Kotlin nadaljuj
- Kotlinova funkcija