02.26 Scala高阶函数简单了解

高阶函数

Scala中,由于函数是一等公民,因此可以直接将某个函数传入其他函数,作为参数。这个功能 是极其强大的。


接收其他函数作为参数的函数,被称作高阶函数(higher-order function)

Scala高阶函数简单了解

调用高阶函数

Scala高阶函数简单了解

Scala高阶函数简单了解

一般写匿名函数的方式比较多

Scala高阶函数简单了解

简化省略花括号,后面碰到也要知道这种是可行的

Scala高阶函数简单了解

简化省略数据类型

Scala高阶函数简单了解

简化省略圆括号,如果匿名函数只有一个参数的话,可以省略圆括号

Scala高阶函数简单了解

简化下划线代替,如果函数左侧的参数在函数右侧代码体中,有且只有一次使用的情况,而且使用次序和左侧参数列表次序一致,那么就可以省略输入参数,并且使用下划线代替。

Scala高阶函数简单了解


定义一个多参数的高阶函数

Scala高阶函数简单了解

调用高阶函数

Scala高阶函数简单了解

简化省去花括号

Scala高阶函数简单了解

简化省略数据类型

Scala高阶函数简单了解

简化下划线代替

Scala高阶函数简单了解

高阶函数的另外一个功能是将函数作为返回值

Scala高阶函数简单了解

一些常见函数

map: 对传入的每个元素都进行映射,返回一个处理后的元素

Scala高阶函数简单了解

foreach: 对传入的每个元素都进行处理,但是没有返回值

Scala高阶函数简单了解

filter: 对传入的每个元素都进行条件判断,如果对元素返回true,则保留该元素,否则过滤掉该元素

(1 to 20).filter(_ % 2 == 0)

Scala高阶函数简单了解

reduceLeft: 从左侧元素开始,进行reduce操作,即先对元素1和元素2进行处理,然后将结果与元素3处理 再将结果与元素4处理,依次类推,即为reduce;reduce操作必须掌握

Scala高阶函数简单了解


分享到:


相關文章: