scala匿名函数

匿名函数在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

image

上述定义的匿名函数,实际上是下面这种写法的简写:orm

image

简单调用以下:htm

image

咱们固然也能够定义多个参数的匿名函数:ci

image

多参数使用Function语法来定义以下get

image

也能够定义没有参数的匿名函数:

image

匿名函数的Function语法的实现以下:

image

用来表示上述三个匿名函数(一个参数,两个参数,无参数)的函数类型也很简单

上述三个函数的函数类型分别表示以下:

Int => Int

(Int,Int) => Int

() => Unit

上述表示的函数类型是下面这种表示放法的简写

Function1[Int,Int]

Function2[Int,Int,Int]

Function0[Unit]

转自:

Scala匿名函数语法 - sysman

Anonymous Function Syntax

相关文章
相关标签/搜索