Ricerca…


introduzione

Le espressioni di intervallo sono formate con le funzioni rangeTo che hanno la forma dell'operatore .. che è completata da in e! In. L'intervallo è definito per qualsiasi tipo comparabile, ma per i tipi primitivi integrali ha un'implementazione ottimizzata

Gamme di tipo integrale

Le gamme di tipi integrali (IntRange, LongRange, CharRange) hanno una caratteristica in più: possono essere ripetute. Il compilatore si occupa di convertirlo in modo analogo al ciclo for indexato di Java, senza costi aggiuntivi

for (i in 1..4) print(i) // prints "1234"
for (i in 4..1) print(i) // prints nothing

funzione downTo ()

se vuoi ripetere i numeri in ordine inverso? È semplice. È possibile utilizzare la funzione downTo () definita nella libreria standard

for (i in 4 downTo 1) print(i) // prints "4321"

funzione step ()

È possibile iterare su numeri con step arbitrario, non uguale a 1? Certo, la funzione step () ti aiuterà

for (i in 1..4 step 2) print(i) // prints "13"
for (i in 4 downTo 1 step 2) print(i) // prints "42"

fino alla funzione

Per creare un intervallo che non include il suo elemento finale, puoi utilizzare la funzione until:

for (i in 1 until 10) { // i in [1, 10), 10 is excluded
println(i)
}


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow