可能的重复:
在 Scala 中减少 for 循环?
在使用Scala For The Impatient时,我遇到了以下练习:
为 Java 循环编写等效的 Scala for (int i = 10; i >= 0; i--) System.out.println(i);
我很快就想出了以下解决方案:
for (i <- 1 to 10 reverse) {
println(i)
}
然而,这让我想知道如何推断这样做的成本。reverse 方法是对 Range 进行 O(n) 遍历,还是用一些花哨的索引算术来装饰它?还有其他结构可以做得更好吗?