Java でこれに相当するように、ループを 2 ずつインクリメントするにはどうすればよいですか。
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
もちろん
(0 until max by 2) foreach {...}
十分であろう。
驚くほど簡単:
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