Ebben az oktatóanyagban megtanulja a break használatát a hurok lezárásához. Ezenkívül megismerheti a break címkéket.
Tegyük fel, hogy hurkokkal dolgozik. Néha kívánatos a ciklus azonnali befejezése a tesztkifejezés ellenőrzése nélkül.
Ebben az esetben break
használják. Megállítja a legközelebbi zárókört, amikor találkozik (anélkül, hogy ellenőrizné a teszt kifejezést). Ez hasonló ahhoz, ahogy a break utasítás működik a Java-ban.
Hogyan működik a szünet?
Szinte mindig használják, ha… más konstrukcióval. Például,
(…) (if (testExpression) (törés))
Ha a testExpression értékét kiértékeli true
, break
akkor végrehajtásra kerül, amely befejezi a for
ciklust.
Példa: Kotlin szünet
fun main(args: Array) ( for (i in 1… 10) ( if (i == 5) ( break ) println(i) ) )
A program futtatásakor a kimenet a következő lesz:
1 2 3 4
Ha i értéke 5, a i == 5
belső kifejezést if
kiértékeli true
és break
végrehajtja. Ez megszakítja a for ciklust.
Példa: Számolja ki az összeget, amíg a felhasználó meg nem adja a 0 értéket
Az alábbi program kiszámítja a felhasználó által megadott számok összegét, amíg a felhasználó be nem írja a 0 értéket.
Látogasson el a Kotlin Basic Input Output oldalra, ha többet szeretne megtudni arról, hogyan veheti át a felhasználótól a felhasználót.
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") )
A program futtatásakor a kimenet a következő lesz:
Írjon be egy számot: 4 Írjon be egy számot: 12 Írjon be egy számot: 6 Írjon be egy számot: -9 Írjon be egy számot: 0 összeg = 13
A fenti programban a while
ciklus teszt kifejezése mindig az true
.
Itt a while
hurok addig fut, amíg a felhasználó be nem adja a 0 értéket. Amikor a felhasználó beírja a 0 értéket, break
akkor a while
ciklus befejeződik .
Kotlin feliratú törés
Amit eddig tanultál, az a felirat nélküli formája break
, amely véget vet a legközelebbi záró körnek. Van egy másik módszer break
is (címkézett forma) a kívánt hurok (lehet külső hurok) befejezésére.
Hogyan működik a címkézett break?
A címke Kotlinban egy azonosítóval kezdődik, amelyet követ @
.
Itt a @ teszt egy címke, amelyet a while hurok külső részén jelölünk. Most break
egy címkével ( break@test
ebben az esetben) történő használatával megszakíthatja az adott hurkot.
Íme egy példa:
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 ) ) )
A program futtatásakor a kimenet a következő lesz:
i = 1; j = 1 i = 1; j = 2 i = 2; j = 1
Itt, amikor a i == 2
kifejezést értékelik true
, break@first
végrehajtják, amely befejezi a címkével jelölt ciklust first@
.
Íme egy kis variáció a fenti programról.
Az alábbi programban a break befejezi a címkével jelölt ciklust @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 ) ) )
A program futtatásakor a kimenet a következő lesz:
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
Megjegyzés: Mivel break
a program a legbelső hurok megszüntetésére szolgál, ebben az esetben nem szükséges címkézett törést használni.
Jelenleg 3 szerkezeti ugrás kifejezéseket Kotlin: break
, continue
és return
. Ha többet szeretne megtudni continue
és return
kifejezni, látogasson el ide:
- Kotlin folytatja
- Kotlin funkció