如何在Kotlin中创建倒序(从大到小)的range?
大家好!我最近开始学习Kotlin,在处理ranges时遇到了问题。我需要用for循环从10到1遍历数字,也就是倒序。我尝试这样写:
```kotlin
for (i in 10..1) {
println(i)
}
```
但这段代码没有任何输出!我期望看到数字10, 9, 8... 1,但循环根本没有执行。我查阅了文档,了解到`10..1`创建了一个空的range,因为默认步长是+1,而起始值大于结束值。
我尝试使用`downTo`:
```kotlin
for (i in 10 downTo 1) {
println(i)
}
```
这成功了!但我有几个问题:
1. 为什么`10..1`不工作,而`10 downTo 1`工作?
2. 能否创建一个存储倒序序列的range变量,以便多次使用?
3. 还有其他方法实现倒序遍历吗,比如通过`reversed()`或`step`?
请解释一下正确的用法。