今日快报
Scala高阶函数简单了解你知道吗?
2022-04-08 17:36  浏览:220

高阶函数

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

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

调用高阶函数

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

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

简化省略数据类型

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

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

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

调用高阶函数

简化省去花括号

简化省略数据类型

简化下划线代替

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

一些常见函数

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

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

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

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

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