English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
高階関数(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]