2021年大数据常用语言Scala(二十):函数式编程 介绍
Posted Lansonli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021年大数据常用语言Scala(二十):函数式编程 介绍相关的知识,希望对你有一定的参考价值。
目录
函数式编程 介绍
我们将来使用Spark/Flink的大量业务代码都会使用到函数式编程。下面的这些操作是学习的重点。
现在我们将会逐渐接触函数式编程的方式.
比如我们要说的第一个foreach方法, 就是一个典型的函数式编程方式.
我们将一个函数当做参数 传递给另一个方法/函数
start...
- 遍历(foreach)
- 映射(map)
- 映射扁平化(flatmap)
- 过滤(filter)
- 是否存在(exists)
- 排序(sorted、sortBy、sortWith)
- 分组(groupBy)
- 聚合计算(reduce)
- 折叠(fold)
函数式编程的意义在哪?
函数是对象,可以作为参数传递。
函数除了是对象以为,函数也是一种逻辑的封装。
所以传递函数,本质上是传递计算逻辑
普通的编程形式,方法传递的参数是数据
但是函数式编程中,可以将函数进行传递,那么传递的是计算逻辑
回想,Java中也有类似的传递计算逻辑的写法:
- 反射(比如:匿名内部类,MapReduce)
那么,可以知道:Scala的函数式编程,底层是Java的反射
以上是关于2021年大数据常用语言Scala(二十):函数式编程 介绍的主要内容,如果未能解决你的问题,请参考以下文章
2021年大数据常用语言Scala(二十七):函数式编程 聚合操作
2021年大数据常用语言Scala(二十一):函数式编程 遍历 foreach
2021年大数据常用语言Scala(二十四):函数式编程 过滤 filter
2021年大数据常用语言Scala(二十六):函数式编程 分组 groupBy