Přerušení Kotlin (s příklady)

V tomto kurzu se naučíte používat break k ukončení smyčky. Dozvíte se také o zlomení štítků.

Předpokládejme, že pracujete se smyčkami. Někdy je žádoucí smyčku okamžitě ukončit bez kontroly testovacího výrazu.

V takovém případě breakse používá. Když se setká, ukončí nejbližší uzavírací smyčku (bez kontroly testovacího výrazu). To je podobné tomu, jak funguje příkaz break v Javě.

Jak funguje zlom?

Téměř vždy se používá s konstrukcí if… else. Například,

 pro (…) (if (testExpression) (break))

Pokud je testExpression vyhodnocen na true, breakje proveden, čímž se forsmyčka ukončí .

Příklad: Kotlinův zlom

 fun main(args: Array) ( for (i in 1… 10) ( if (i == 5) ( break ) println(i) ) )

Když spustíte program, výstup bude:

 1 2 3 4 

Když je hodnota i rovna 5, je výraz i == 5uvnitř ifvyhodnocen na truea breakje proveden. Tím se ukončí smyčka for.

Příklad: Vypočítat součet, dokud uživatel nezadá 0

Níže uvedený program vypočítá součet čísel zadaných uživatelem, dokud uživatel nezadá 0.

Navštivte Kotlin Basic Input Output a dozvíte se více o tom, jak převzít vstup od uživatele.

 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") )

Když spustíte program, výstup bude:

 Zadejte číslo: 4 Zadejte číslo: 12 Zadejte číslo: 6 Zadejte číslo: -9 Zadejte číslo: 0 součet = 13

Ve výše uvedeném programu je testovací výraz whilesmyčky vždy true.

Zde whilesmyčka běží, dokud uživatel nezadá 0. Když uživatel zadá 0, breakprovede se, čímž se whilesmyčka ukončí .

Kotlin Označený zlom

To, co jste se dosud naučili, je neoznačená forma break, která končí nejbližší uzavírací smyčku. Existuje další způsob, jak breaklze použít (označený formulář) k ukončení požadované smyčky (může to být vnější smyčka).

Jak funguje přestávka s označením?

Štítek v Kotlin začíná identifikátorem, za nímž následuje @.

Zde test @ je štítek označený na vnější smyčce while. Nyní pomocí breakštítku ( break@testv tomto případě) můžete prolomit konkrétní smyčku.

Zde je příklad:

 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 ) ) )

Když spustíte program, výstup bude:

i = 1; j = 1 i = 1; j = 2 i = 2; j = 1

Zde, když i == 2je výraz vyhodnocen na true, break@firstje proveden, který ukončí smyčku označenou štítkem first@.

Zde je malá variace výše uvedeného programu.

V níže uvedeném programu konec ukončí smyčku označenou štítkem @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 ) ) ) 

Když spustíte program, výstup bude:

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

Poznámka: Vzhledem k tomu, že breakse v tomto programu používá k ukončení nejvnitřnější smyčky, není v tomto případě nutné používat označený konec.

K dispozici jsou 3 konstrukční výrazy skok v Kotlin: break, continuea return. Chcete-li se dozvědět continuea returnvyjádřit, navštivte:

  • Kotlin pokračovat
  • Funkce Kotlin

Zajímavé články...