匿名函数在spark用的不少,经典用法就是:html
匿名函数赋值给常量:var add = (a:Int, b:Int) => a + b;web
匿名函数赋值给函数:def add = (a:Int, b:Int) => a + b;函数
而后就能够直接用add(2,3)了。ui
Scala中定义匿名函数的语法是至关轻量的。下面的表达式就定义了一个接受一个Intspa
类型输入参数的匿名函数:scala
上述定义的匿名函数,实际上是下面这种写法的简写:orm
简单调用以下:htm
咱们固然也能够定义多个参数的匿名函数:ci
多参数使用Function语法来定义以下get
也能够定义没有参数的匿名函数:
匿名函数的Function语法的实现以下:
用来表示上述三个匿名函数(一个参数,两个参数,无参数)的函数类型也很简单
上述三个函数的函数类型分别表示以下:
Int => Int
(Int,Int) => Int
() => Unit
上述表示的函数类型是下面这种表示放法的简写
Function1[Int,Int]
Function2[Int,Int,Int]
Function0[Unit]
转自: