Scala 高阶函数
高阶函数(Higher-Order Function)就是操作其他函数的函数。
Scala 中允许使用高阶函数, 高阶函数可以使用其他函数作为参数,或者使用函数作为输出结果。
以下范例中,apply() 函数使用了另外一个函数 f 和 值 v 作为参数,而函数 f 又调用了参数 v:
object Test { def main(args: Array[String]) { println( apply( layout, 10) ) } // 函数 f 和 值 v 作为参数,而函数 f 又调用了参数 v def apply(f: Int => String, v: Int) = f(v) def layout[A](x: A) = "[" + x.toString() + "]" }
执行以上代码,输出结果为:
$ scalac Test.scala $ scala Test [10]
Scala 函数Scala 中定义匿名函数的语法很简单,箭头左边是参数列表,右边是函数体。使用匿名函数后,我们的代码变得更简洁了。下面的表达式就定义了一个接受一个Int类型输入参数的匿名函数:var inc = (x ...