当我想重复执行n次时,我发现自己编写了这样的代码:
for (i <- 1 to n) { doSomething() }
Run Code Online (Sandbox Code Playgroud)
我正在寻找这样一个更短的语法:
n.times(doSomething())
Run Code Online (Sandbox Code Playgroud)
Scala中是否存在类似的内容?
编辑
我想过使用Range的foreach()方法,但是块需要采用它从未使用过的参数.
(1 to n).foreach(ignored => doSomething())
Run Code Online (Sandbox Code Playgroud) 我在scala中有一个函数,我想知道是否有可能进入尾递归函数.
def get_f(f: Int => Int, x: Int, y: Int): Int = x match {
case 0 => y
case _ => f(get_f(f, x - 1, y))
}
Run Code Online (Sandbox Code Playgroud)