V tomto kurzu se naučíte používat i nadále k přeskočení aktuální iterace smyčky. V tomto článku se také dozvíte o štítcích pro pokračování.
Předpokládejme, že pracujete se smyčkami. Někdy je žádoucí přeskočit aktuální iteraci smyčky.
V takovém případě continue
se používá. continue
Konstrukt přeskočí aktuální iteraci obklopující smyčky, a ovládání programu přejde na konci těla smyčky.
Jak funguje pokračování?
Téměř vždy se používá s konstrukcí if… else. Například,
while (testExpression1) (// codes1 if (testExpression2) (continue) // codes2)
Pokud je testExpression2 vyhodnocen na true
, continue
je proveden, který přeskočí všechny kódy uvnitř while
smyčky po něm pro tuto iteraci.
Příklad: Kotlin pokračovat
fun main(args: Array) ( for (i in 1… 5) ( println("$i Always printed.") if (i> 1 && i < 5) ( continue ) println("$i Not always printed.") ) )
Když spustíte program, výstup bude:
1 Vždy vytištěno. 1 Ne vždy vytištěno. 2 Vždy vytištěno. 3 Vždy vytištěno. 4 Vždy vytištěno. 5 Vždy vytištěno. 5 Ne vždy vytištěno.
Když je hodnota i větší než 1 a menší než 5, continue
provede se, což přeskočí provedení
println ("$ i Ne vždy vytištěno.")
prohlášení.
Nicméně prohlášení
println ("$ i Vždy vytištěno.")
se provádí v každé iteraci smyčky, protože tento příkaz existuje před continue
konstrukcí.
Příklad: Vypočítat pouze součet kladných čísel
Níže uvedený program vypočítá součet maximálně 6 kladných čísel zadaných uživatelem. Pokud uživatel zadá záporné číslo nebo nulu, bude z výpočtu přeskočeno.
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 number: Int var sum = 0 for (i in 1… 6) ( print("Enter an integer: ") number = readLine()!!.toInt() if (number <= 0) continue sum += number ) println("sum = $sum") )
Když spustíte program, výstup bude:
Zadejte celé číslo: 4 Zadejte celé číslo: 5 Zadejte celé číslo: -50 Zadejte celé číslo: 10 Zadejte celé číslo: 0 Zadejte celé číslo: 12 součet = 31
Kotlin Označeno pokračovat
To, co jste se dosud naučili, je neoznačená forma continue
, která přeskočí aktuální iteraci nejbližší obklopující smyčky. continue
lze také použít k přeskočení iterace požadované smyčky (může to být vnější smyčka) pomocí continue
štítků.
Jak označené pokračování funguje?
Štítek v Kotlin začíná identifikátorem, za nímž následuje @
.
Zde je vnější smyčka @ štítek označený na vnější smyčce while. Nyní pomocí použití continue
se štítkem ( continue@outerloop
v tomto případě) můžete přeskočit provádění kódů konkrétní smyčky pro tuto iteraci.
Příklad: označené pokračovat
fun main(args: Array) ( here@ for (i in 1… 5) ( for (j in 1… 4) ( if (i == 3 || j == 2) continue@here println("i = $i; j = $j") ) ) )
Když spustíte program, výstup bude:
i = 1; j = 1 i = 2; j = 1 i = 4; j = 1 i = 5; j = 1
Použití štítku continue
se často nedoporučuje, protože váš kód je těžko pochopitelný. Pokud se nacházíte v situaci, kdy musíte použít označený continue
, přeformátujte svůj kód a zkuste jej vyřešit jiným způsobem, aby byl čitelnější.
K dispozici jsou 3 konstrukční výrazy skok v Kotlin: break
, continue
a return
. Chcete-li se dozvědět break
a return
vyjádřit, navštivte:
- Kotlinova přestávka
- Funkce Kotlin