[英]Increment for-loop by 2 in Scala
如何将循环增加2,相当于Java中的循环:
for (int i = 0; i < max; i+=2)
现在在Scala中,我有:
for (a <- 0 to max)
实际上, max
永远是偶数。 我不知道如何在每个循环中将计数器增加到2。
尝试for (a <- 0 until max by 2)
注意to
和until
之间的区别。 严格的i < max
你会想要直到。
val max = 10
scala> for(i <- 0 until max by 2)
| println(i)
0
2
4
6
8
scala> for(i <- 0 to max by 2)
| println(i)
0
2
4
6
8
10
这样,您可以将scala用于像java one这样的循环。
object Example extends App {
for(i <-0 to 20 by 2) {
println("Value of i = "+ i)
}
}
输出量
Value of i = 0
Value of i = 2
Value of i = 4
Value of i = 6
Value of i = 8
Value of i = 10
Value of i = 12
Value of i = 14
Value of i = 16
Value of i = 18
Value of i = 20
毫不奇怪的是:
scala> for (a <- 0 until 10 by 2) yield a
// Vector(0, 2, 4, 6, 8, 10)
for (a <- 0 to max by 2) yield a
一定
(0 until max by 2) foreach {...}
就足够了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.