Wie erstelle ich einen Bereich (range) in Kotlin, der rückwärts zählt (von größer zu kleiner)?
Hallo Kollegen! Ich habe vor kurzem angefangen, Kotlin zu lernen, und bin bei der Arbeit mit Bereichen (ranges) auf ein Problem gestoßen. Ich muss in einer for-Schleife die Zahlen von 10 bis 1 durchlaufen, also in umgekehrter Reihenfolge. Ich habe es so versucht:
```kotlin
for (i in 10..1) {
println(i)
}
```
Aber dieser Code gibt nichts aus! Ich erwartete die Zahlen 10, 9, 8... 1 zu sehen, aber die Schleife wird einfach nicht ausgeführt. Ich habe die Dokumentation gelesen und verstanden, dass `10..1` einen leeren Bereich erzeugt, weil der Standard-Schritt +1 ist und der Startwert größer als der Endwert ist.
Ich habe `downTo` ausprobiert:
```kotlin
for (i in 10 downTo 1) {
println(i)
}
```
Das hat funktioniert! Aber ich habe ein paar Fragen:
1. Warum funktioniert `10..1` nicht, aber `10 downTo 1` funktioniert?
2. Kann ich irgendwie eine Bereichsvariable erstellen, die die umgekehrte Sequenz speichert, um sie später mehrmals zu verwenden?
3. Gibt es andere Möglichkeiten, eine Rückwärtsiteration durchzuführen, zum Beispiel mit `reversed()` oder `step`?
Bitte erklären Sie, wie das richtig funktioniert.