Recherche…
Introduction
Les expressions de plage sont formées avec les fonctions rangeTo dont la forme opérateur est complétée par in et! In. La plage est définie pour tout type comparable, mais pour les types primitifs intégraux, elle a une implémentation optimisée.
Gammes de type intégral
Les plages de types intégraux (IntRange, LongRange, CharRange) ont une fonctionnalité supplémentaire: elles peuvent être itérées. Le compilateur prend soin de convertir ceci de manière analogue à Java indexé pour la boucle, sans surcharge supplémentaire
for (i in 1..4) print(i) // prints "1234"
for (i in 4..1) print(i) // prints nothing
fonction downTo ()
si vous voulez parcourir les nombres dans l'ordre inverse? C'est simple. Vous pouvez utiliser la fonction downTo () définie dans la bibliothèque standard
for (i in 4 downTo 1) print(i) // prints "4321"
fonction step ()
Est-il possible d'itérer sur des nombres avec pas arbitraire, pas égal à 1? Bien sûr, la fonction step () vous aidera
for (i in 1..4 step 2) print(i) // prints "13"
for (i in 4 downTo 1 step 2) print(i) // prints "42"
jusqu'à fonction
Pour créer une plage qui n'inclut pas son élément de fin, vous pouvez utiliser la fonction jusqu'à:
for (i in 1 until 10) { // i in [1, 10), 10 is excluded
println(i)
}