因此,在阅读有关Scala 中隐式类的 Scala 之旅时,我遇到了这段代码:
object Helpers {
implicit class IntWithTimes(x: Int) {
def times[A](f: => A): Unit = {
def loop(current: Int): Unit =
if(current > 0) {
f
loop(current - 1)
}
loop(x)
}
}
}
令我困扰的是这def times[A](f: => A): Unit = {
条线。这里发生了什么?函数类型参数的部分A
,我理解,但我无法完全理解这(f: => A)
部分是什么。是否表示 f 是一个接受任何类型/数量的参数并返回 A 类型对象的函数?
因此,这种结构是否有效地意味着一个接受任何参数并返回我想要的任何东西的函数?