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]