Scala允许定义高阶函数。它是将其他函数作为参数或其结果是函数的函数。
尝试以下示例程序,apply()
函数接受另一个函数f
和值v
,并将函数f
应用于v
。
示例
object Demo {
def main(args: Array[String]) {
println( apply( layout, 10) )
}
def apply(f: Int => String, v: Int) = f(v)
def layout[A](x: A) = "[" + x.toString() + "]"
}
将上述程序保存在源文件:Demo.scala中,使用以下命令编译和执行此程序。
$ scalac Demo.scala
$ scala Demo
[10]