Pętla for w Kotlinie wykonuje iterację przez wszystko, co udostępnia iterator. W tym artykule nauczysz się tworzyć pętlę for (na podstawie przykładów).
W Kotlin nie ma tradycyjnej pętli for, w przeciwieństwie do Javy i innych języków.
W Kotlinie for
pętla służy do iteracji po zakresach, tablicach, mapach i tak dalej (wszystko, co zapewnia iterator).
Składnia for
pętli w Kotlinie to:
for (element w kolekcji) (// treść pętli)
Przykład: iteracja w zakresie
fun main(args: Array) ( for (i in 1… 5) ( println(i) ) )
Tutaj pętla iteruje przez zakres i wyświetla pojedynczy element.
Po uruchomieniu programu wynik będzie następujący:
1 2 3 4 5
Jeśli treść pętli zawiera tylko jedną instrukcję (jak w powyższym przykładzie), nie ma potrzeby używania nawiasów klamrowych ( )
.
fun main(args: Array) ( for (i in 1… 5) println(i) )
Możliwe jest iterowanie zakresu za pomocą for
pętli, ponieważ zakresy zapewnia iterator. Aby dowiedzieć się więcej, odwiedź iteratory Kotlin.
Przykład: różne sposoby iteracji w zakresie
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) )
Po uruchomieniu programu wynik będzie następujący:
for (i in 1… 5) print (i) = 12345 for (i in 5… 1) print (i) = for (i in 5 downTo 1) print (i) = 54321 for (i in 1… 4 step 2 ) print (i) = 135 for (i in 4 downTo 1 step 2) print (i) = 531
Iteracja przez tablicę
Oto przykład iteracji po String
tablicy.
fun main(args: Array) ( var language = arrayOf("Ruby", "Koltin", "Python" "Java") for (item in language) println(item) )
Po uruchomieniu programu wynik będzie następujący:
Ruby Koltin Python Java
Możliwe jest iterowanie po tablicy z indeksem. Na przykład,
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 (język (element))))
Po uruchomieniu programu wynik będzie następujący:
Ruby Python
Jeśli chcesz dowiedzieć się więcej o tablicach, odwiedź tablice Kotlin.
Iterowanie przez ciąg
fun main(args: Array) ( var text= "Kotlin" for (letter in text) ( println(letter) ) )
Po uruchomieniu programu wynik będzie następujący:
K otlin
Podobnie jak w przypadku tablic, możesz iterować po String
indeksie. Na przykład,
fun main(args: Array) ( var text= "Kotlin" for (item in text.indices) ( println(text(item)) ) )
Po uruchomieniu programu wynik będzie następujący:
K otlin
Nauczysz się iterować po mapie przy użyciu for
pętli w artykule o mapie Kotin.