For loop Kotlīnā atkārtojas, izmantojot visu, kas nodrošina iteratoru. Šajā rakstā jūs iemācāties izveidot cilpu (ar piemēru palīdzību).
Atšķirībā no Java un citām valodām Kotlin nav tradicionāla cilpa.
Kotlīnā for
cilpa tiek izmantota, lai atkārtotu diapazonus, masīvus, kartes un tā tālāk (jebkas, kas nodrošina iteratoru).
for
Kotlina cilpas sintakse ir:
for (vienums kolekcijā) (// cilpas pamatteksts)
Piemērs: atkārtot caur diapazonu
fun main(args: Array) ( for (i in 1… 5) ( println(i) ) )
Šeit cilpa atkārtojas diapazonā un izdrukā atsevišķu vienumu.
Palaidot programmu, izeja būs:
1 2 3 4 5
Ja cilpas pamattekstā ir tikai viens priekšraksts (piemēram, iepriekš minētais piemērs), nav nepieciešams izmantot cirtainās lencītes ( )
.
fun main(args: Array) ( for (i in 1… 5) println(i) )
Izmantojot for
ciklu, ir iespējams atkārtot diapazonu, jo diapazoni nodrošina iteratoru. Lai uzzinātu vairāk, apmeklējiet Kotlin atkārtotājus.
Piemērs: dažādi veidi, kā atkārtoties diapazonā
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) )
Palaidot programmu, izeja būs:
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 (i in 4 downTo 1 step 2) print (i) = 531
Atkārtojas caur masīvu
Šeit ir piemērs, kā atkārtot String
masīvu.
fun main(args: Array) ( var language = arrayOf("Ruby", "Koltin", "Python" "Java") for (item in language) println(item) )
Palaidot programmu, izeja būs:
Ruby Koltin Python Java
Ir iespējams atkārtot, izmantojot masīvu ar indeksu. Piemēram,
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 (valoda (vienums))))
Palaidot programmu, izeja būs:
Ruby Python
Ja vēlaties uzzināt vairāk par masīviem, apmeklējiet Kotlin masīvus.
Atkārtojas caur stīgu
fun main(args: Array) ( var text= "Kotlin" for (letter in text) ( println(letter) ) )
Palaidot programmu, izeja būs:
K otlin
Līdzīgi kā masīvi, jūs varat atkārtot, izmantojot a String
ar indeksu. Piemēram,
fun main(args: Array) ( var text= "Kotlin" for (item in text.indices) ( println(text(item)) ) )
Palaidot programmu, izeja būs:
K otlin
Jūs iemācīsities atkārtot karti, izmantojot for
cilni Kotinas kartes rakstā.