Latest web development tutorials

Scala 高階函數

Scala 函數 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函數