高阶函数(Higher-Order Function)就是操作其他函数的函数。
Scala 中允许使用高阶函数, 高阶函数可以使用其他函数作为参数,或者使用函数作为输出结果。
以下实例中,apply() 函数使用了另外一个函数 f 和 值 v 作为参数,而函数 f 又调用了参数 v:
object Test5{
def main(argc: Array[String]){
println("Higher-Order Function:"+apply( layout,10 ))
}
def apply(f:Int => String, v:Int) = f(v)
def layout[A](x: A) = "[" + x.toString() + "]"
}
[root@node1 scala]# scalac Test5.scala
[root@node1 scala]# scala Test5
Higher-Order Function:[10]
[root@node1 scala]#