小白教程
所有教程
关于
Search
172.69.58.103
172.69.58.103
参数设置
贡献
退出
操作
编辑
移动
保护
信息
历史
删除
查看“Anonymous functions”的源代码
本页内容
上一节:
Nested_functions
下一节:
Partially_applied_functions
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{DISPLAYTITLE:匿名函数}}[[Category:scala functions|8]] = Scala 匿名函数 = [[scala functions|Scala 函数]] Scala 中定义匿名函数的语法很简单,箭头左边是参数列表,右边是函数体。 使用匿名函数后,我们的代码变得更简洁了。 下面的表达式就定义了一个接受一个Int类型输入参数的匿名函数: <pre> var inc = (x:Int) => x+1 </pre> 上述定义的匿名函数,其实是下面这种写法的简写: <pre> def add2 = new Function1[Int,Int]{ def apply(x:Int):Int = x+1; } </pre> 以上实例的 inc 现在可作为一个函数,使用方式如下: <pre> var x = inc(7)-1 </pre> 同样我们可以在匿名函数中定义多个参数: <pre> var mul = (x: Int, y: Int) => x*y </pre> mul 现在可作为一个函数,使用方式如下: <pre> println(mul(3, 4)) </pre> 我们也可以不给匿名函数设置参数,如下所示: <pre> var userDir = () => { System.getProperty("user.dir") } </pre> userDir 现在可作为一个函数,使用方式如下: <pre> println( userDir() ) </pre> == <sample title="" desc="" lang="scala" hererun="1"> object Demo { def main(args: Array[String]) { println( "multiplier(1) value = " + multiplier(1) ) println( "multiplier(2) value = " + multiplier(2) ) } var factor = 3 val multiplier = (i:Int) => i * factor } </sample> 将以上代码保持到 Demo.scala 文件中,执行以下命令: <pre> $ scalac Demo.scala $ scala Demo </pre> 输出结果为: <pre> multiplier(1) value = 3 multiplier(2) value = 6 </pre> [[scala functions|Scala 函数]]
返回至“
Anonymous functions
”。
上一节:
Nested_functions
下一节:
Partially_applied_functions