Smyčka for v Kotlin iteruje vším, co poskytuje iterátor. V tomto článku se naučíte vytvářet smyčku (pomocí příkladů).
Na rozdíl od Javy a dalších jazyků neexistuje v Kotlinu tradiční smyčka for.
V Kotlinu se for
smyčka používá k iteraci rozsahů, polí, map atd. (Vše, co poskytuje iterátor).
Syntaxe for
smyčky v Kotlin je:
for (item in collection) (// body of loop)
Příklad: Iterace v rozsahu
fun main(args: Array) ( for (i in 1… 5) ( println(i) ) )
Zde smyčka iteruje rozsahem a tiskne jednotlivé položky.
Když spustíte program, výstup bude:
1 2 3 4 5
Pokud tělo smyčky obsahuje pouze jeden příkaz (jako výše uvedený příklad), není nutné používat složené závorky ( )
.
fun main(args: Array) ( for (i in 1… 5) println(i) )
Je možné iterovat rozsah pomocí for
smyčky, protože rozsahy poskytují iterátor. Další informace najdete v iterátorech Kotlin.
Příklad: Různé způsoby, jak procházet rozsahem
fun main(args: Array) ( print("for (i in 1… 5) print(i) = ") for (i in 1… 5) print(i) println() print("for (i in 5… 1) print(i) = ") for (i in 5… 1) print(i) // prints nothing println() print("for (i in 5 downTo 1) print(i) = ") for (i in 5 downTo 1) print(i) println() print("for (i in 1… 4 step 2) print(i) = ") for (i in 1… 5 step 2) print(i) println() print("for (i in 4 downTo 1 step 2) print(i) = ") for (i in 5 downTo 1 step 2) print(i) )
Když spustíte program, výstup bude:
pro (i v 1… 5) tisk (i) = 12345 pro (i v 5… 1) tisk (i) = pro (i v 5 dolů 1) tisk (i) = 54321 pro (i v 1… 4 krok 2 ) print (i) = 135 pro (i in 4 downTo 1 step 2) print (i) = 531
Iterace polem
Tady je příklad iterace přes String
pole.
fun main(args: Array) ( var language = arrayOf("Ruby", "Koltin", "Python" "Java") for (item in language) println(item) )
Když spustíte program, výstup bude:
Ruby Koltin Python Java
Je možné iterovat přes pole s indexem. Například,
fun main(args: Array) ( var language = arrayOf("Ruby", "Koltin", "Python", "Java") for (item in language.indices) ( // printing array elements having even index only if (item%2 == 0)
println (jazyk (položka))))
Když spustíte program, výstup bude:
Ruby Python
Pokud se chcete o polích dozvědět více, navštivte pole Kotlin.
Iterace řetězcem
fun main(args: Array) ( var text= "Kotlin" for (letter in text) ( println(letter) ) )
Když spustíte program, výstup bude:
K otlin
Podobně jako pole můžete iterovat pomocí String
indexu. Například,
fun main(args: Array) ( var text= "Kotlin" for (item in text.indices) ( println(text(item)) ) )
Když spustíte program, výstup bude:
K otlin
V for
článku o mapě Kotin se naučíte iterovat po mapě pomocí smyčky.