在Scala中循环

时间:2018-12-29 01:47:02

标签: scala

我是Scala的新手,我正在尝试编写一个可以打印“ Hello World” 50次的函数。

我正在使用Scala REPL并按如下所示定义函数-

def f(n:Int) = for(a<-n) {if(n<=50) println("Hello World")}

但是,我遇到了错误-

<console>:11: error: value foreach is not a member of Int

3 个答案:

答案 0 :(得分:5)

The requested interface implements a protected class.

或者,更好。

for (_ <- 1 to 50) println("hi")

答案 1 :(得分:0)

我认为您想定义一个函数并将循环迭代作为参数传递。您可以使用下面的代码来定义该函数,然后调用该函数以使其与参数一起运行。

tmap

希望这对您有所帮助。

答案 2 :(得分:-1)

Scala是函数式语言,因此我们希望避免突变,最好使用递归函数而不是for循环。

 import scala.annotation.tailrec
  @tailrec
  final def printNthTime(str: String, n: Int): Unit = {
    if (n > 1) {
      println(str)
      printNthTime(str, n - 1)
    }
    else println(str)
  }