În acest tutorial, veți învăța să utilizați break pentru a termina o buclă. De asemenea, veți afla și despre etichetele de pauză.
Să presupunem că lucrați cu bucle. Uneori este de dorit să încheiem bucla imediat fără a verifica expresia testului.
În acest caz, break
se folosește. Se termină cea mai apropiată buclă de închidere atunci când este întâlnită (fără a verifica expresia de test). Acest lucru este similar cu modul în care funcționează declarația break în Java.
Cum funcționează pauza?
Este aproape întotdeauna folosit cu if … else construct. De exemplu,
pentru (…) (dacă (testExpression) (pauză))
Dacă testExpression este evaluat la true
, break
se execută care termină for
bucla.
Exemplu: pauza Kotlin
fun main(args: Array) ( for (i in 1… 10) ( if (i == 5) ( break ) println(i) ) )
Când rulați programul, ieșirea va fi:
1 2 3 4
Când valoarea lui i este egală cu 5, expresia din i == 5
interior if
este evaluată la true
și break
se execută. Aceasta termină bucla for.
Exemplu: Calculați suma până când utilizatorul introduce 0
Programul de mai jos calculează suma numerelor introduse de utilizator până când utilizatorul introduce 0.
Accesați Kotlin Basic Input Output pentru a afla mai multe despre cum să primiți date de la utilizator.
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") )
Când rulați programul, ieșirea va fi:
Introduceți un număr: 4 Introduceți un număr: 12 Introduceți un număr: 6 Introduceți un număr: -9 Introduceți un număr: 0 sumă = 13
În programul de mai sus, expresia de test a while
buclei este întotdeauna true
.
Aici, while
bucla rulează până când utilizatorul introduce 0. Când utilizatorul introduce 0, break
se execută care termină while
bucla.
Kotlin Etichetă pauză
Ceea ce ați învățat până acum este o formă fără etichetă break
, care termină cea mai apropiată buclă de închidere. Există o altă modalitate prin care se break
poate utiliza (formă etichetată) pentru a termina bucla dorită (poate fi bucla exterioară).
Cum funcționează pauza etichetată?
Eticheta din Kotlin începe cu un identificator care este urmat de @
.
Aici, test @ este o etichetă marcată la bucla while exterioară. Acum, folosind break
cu o etichetă ( break@test
în acest caz), puteți rupe bucla specifică.
Iată un exemplu:
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 ) ) )
Când rulați programul, ieșirea va fi:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
Aici, atunci când i == 2
expresia este evaluată la true
, break@first
se execută care termină bucla marcată cu etichetă first@
.
Iată o mică variantă a programului de mai sus.
În programul de mai jos, break termină bucla marcată cu etichetă @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 ) ) )
Când rulați programul, ieșirea va fi:
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
Notă: Deoarece, break
este utilizat pentru a termina bucla cea mai interioară din acest program, nu este necesar să utilizați întreruperea etichetată în acest caz.
Există 3 expresii salt structurale în Kotlin: break
, continue
și return
. Pentru a afla despre continue
și return
exprimare, vizitați:
- Kotlin continuă
- Funcția Kotlin