Sök…
Introduktion
Områdeuttryck bildas med RangeTo-funktioner som har operatörsformen .. som kompletteras med in och! In. Område definieras för alla jämförbara typer, men för integrerade primitiva typer har det en optimerad implementering
Integrerade typintervall
Integrerade typintervall (IntRange, LongRange, CharRange) har en extra funktion: de kan itereras över. Kompilatorn handlar om att konvertera detta på ett analogt sätt till Java: s indexerade for-loop utan extra omkostnader
for (i in 1..4) print(i) // prints "1234"
for (i in 4..1) print(i) // prints nothing
downTo () -funktion
om du vill iterera över siffror i omvänd ordning? Det är enkelt. Du kan använda funktionen downTo () som definieras i standardbiblioteket
for (i in 4 downTo 1) print(i) // prints "4321"
steg () -funktion
Är det möjligt att iterera över siffror med godtyckligt steg, inte lika med 1? Visst kommer steg () -funktionen att hjälpa dig
for (i in 1..4 step 2) print(i) // prints "13"
for (i in 4 downTo 1 step 2) print(i) // prints "42"
tills funktion
För att skapa ett intervall som inte inkluderar dess slutelement kan du använda funktionen till:
for (i in 1 until 10) { // i in [1, 10), 10 is excluded
println(i)
}