Scalaの匿名関数
構文で定義されたScalaの匿名関数は非常に単純ですが、左の矢印はパラメータリストで、右側は関数の本体である、型パラメータが省略され、Scalaの型推論は、型引数を推論します。 匿名関数を使用した後、私たちのコードより簡潔。
次の式はInt型匿名関数の入力パラメーターを受け入れ定義しています。
var inc = (x:Int) => x+1
上記で定義された匿名関数は、実際には、このようなアプローチは、以下の省略形です。
def add2 = new Function1[Int,Int]{ def apply(x:Int):Int = x+1; }
株式会社上記の例は以下のを使用し、関数として使用することができます。
var x = inc(7)-1
同様に、我々はパラメータの数で無名関数を定義することができます。
var mul = (x: Int, y: Int) => x*y
MULは、機能として利用可能になりました、以下を使用します。
println(mul(3, 4))
次のように私たちは、匿名関数のパラメータを設定することはできません。
var userDir = () => { System.getProperty("user.dir") }
機能として利用できるようになりましUSERDIR、次のコマンドを使用します。
println( userDir )