Zoeken…
Invoering
Bereikuitdrukkingen worden gevormd met bereikTo-functies met de operatorvorm ... die wordt aangevuld met in en! In. Bereik is gedefinieerd voor elk vergelijkbaar type, maar voor integrale primitieve typen heeft het een geoptimaliseerde implementatie
Integrale typebereiken
Integrale typebereiken (IntRange, LongRange, CharRange) hebben een extra functie: ze kunnen worden herhaald. De compiler zorgt ervoor dat dit analoog wordt geconverteerd naar Java's geïndexeerde for-loop, zonder extra overhead
for (i in 1..4) print(i) // prints "1234"
for (i in 4..1) print(i) // prints nothing
functie downTo ()
als u nummers in omgekeerde volgorde wilt herhalen? Het is makkelijk. U kunt de functie downTo () gebruiken die in de standaardbibliotheek is gedefinieerd
for (i in 4 downTo 1) print(i) // prints "4321"
step () functie
Is het mogelijk om getallen te herhalen met een willekeurige stap, niet gelijk aan 1? Natuurlijk zal de step () functie je helpen
for (i in 1..4 step 2) print(i) // prints "13"
for (i in 4 downTo 1 step 2) print(i) // prints "42"
tot functie
Om een bereik te maken dat geen eindelement bevat, kunt u de functie till gebruiken:
for (i in 1 until 10) { // i in [1, 10), 10 is excluded
println(i)
}