Scala - 匿名函数


Scala 提供了一种相对轻量级的语法来定义匿名函数。源代码中的匿名函数称为函数文字,在运行时,函数文字被实例化为称为函数值的对象。

Scala 支持一等函数,这意味着函数可以用函数字面语法来表示,即 (x: Int) => x + 1,并且函数可以用对象来表示,对象称为函数值。

尝试以下表达式,它为整数创建一个后继函数 -

var inc = (x:Int) => x+1

变量 inc 现在是一个可以按通常方式使用的函数 -

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 )
scala_functions.htm