如何在scala中动态增加for循环变量?

Sag*_*ela 5 loops scala

如何根据某些条件动态增加 for 循环变量。

例如。

var col = 10

for (i <- col until 10) {

if (Some condition)
  i = i+2;   // Reassignment to val, compile error
  println(i)
}
Run Code Online (Sandbox Code Playgroud)

在 scala 中怎么可能呢?

Oli*_*Oli 2

许多低级语言允许您通过 C 语言(如 for 循环)来完成此操作,但这并不是 for 循环的真正用途。在大多数语言中,当您提前知道(循环开始时)需要多少次迭代时,就会使用 for 循环。否则,将使用 while 循环。

你应该在 scala 中使用 while 循环。

var i = 0
while(i<10) {
    if (Some condition)
        i = i+2
    println(i)
    i+=1
}
Run Code Online (Sandbox Code Playgroud)