U ovom vodiču naučit ćete koristiti break za prekidanje petlje. Također ćete naučiti i o oznakama prekida.
Pretpostavimo da radite s petljama. Ponekad je poželjno odmah prekinuti petlju bez provjere testnog izraza.
U takvom se slučaju break
koristi. Završava najbližu zatvaračku petlju kad se naiđe (bez provjere testnog izraza). To je slično načinu na koji break naredba radi u Javi.
Kako pauza djeluje?
Gotovo se uvijek koristi s konstrukcijom if … else. Na primjer,
za (…) (ako (testExpression) (prekid))
Ako se testExpression procijeni na true
, break
izvršava se čime se for
petlja završava .
Primjer: Kotlinov odmor
fun main(args: Array) ( for (i in 1… 10) ( if (i == 5) ( break ) println(i) ) )
Kada pokrenete program, izlaz će biti:
1 2 3 4
Kada je vrijednost i jednaka 5, izraz i == 5
unutar if
se izračunava true
i break
izvršava. Ovo prekida petlju for.
Primjer: Izračunaj zbroj dok korisnik ne unese 0
Program u nastavku izračunava zbroj brojeva koje je korisnik unio dok korisnik ne unese 0.
Posjetite Kotlin Basic Input Output da biste saznali više o tome kako od korisnika dobiti unos.
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") )
Kada pokrenete program, izlaz će biti:
Unesite broj: 4 Unesite broj: 12 Unesite broj: 6 Unesite broj: -9 Unesite broj: 0 zbroj = 13
U gore navedenom programu testni izraz while
petlje je uvijek true
.
Ovdje se while
petlja izvodi dok korisnik ne unese 0. Kada korisnik unese 0, break
izvršava se čime se while
petlja prekida .
Kotlin Označena stanka
Ono što ste do sada naučili je neobilježeni oblik break
, koji završava najbližu zatvaračku petlju. Postoji još jedan način na koji break
se može koristiti (označeni obrazac) za prekid željene petlje (može biti vanjska petlja).
Kako funkcionira označena stanka?
Oznaka u Kotlinu započinje identifikatorom iza kojeg slijedi @
.
Ovdje je test @ oznaka označena na vanjskoj while petlji. Sada, pomoću break
oznake ( break@test
u ovom slučaju), možete prekinuti određenu petlju.
Evo primjera:
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 ) ) )
Kada pokrenete program, izlaz će biti:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
Evo, kad i == 2
izraz se ocjenjuje da true
, break@first
izvršava koja završava petlju označen s oznakom first@
.
Evo male varijacije gornjeg programa.
U donjem programu prekid prekida petlju označenu oznakom @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 ) ) )
Kada pokrenete program, izlaz će biti:
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
Napomena: Budući break
da se u ovom programu koristi za završavanje najunutarnje petlje, u ovom slučaju nije potrebno koristiti označeni prekid.
Postoje 3 strukturne skok izrazi u Kotlin: break
, continue
i return
. Da biste saznali više o izražavanju continue
i return
izražavanju, posjetite:
- Kotlin nastaviti
- Funkcija Kotlina