reducing
是一个收集器(操作)从芓面意义上可以理解为“减少操作”:输入多个元素,在一定的操作后元素减少。
reducing
有多个重载方法其中一个方法如下:
以上方法,JDK对其的描述是:
注:以上代码如果要计算最小值公式、平均值将
maxBy
换成minBy
就可以了。
可以看出函数式编程的效率不一定会比普通编程效率更高,甚至相对要慢一点但是,函数式编程的好处在于:
- 把参数作为一个函数而不是值,实现了只有在需要的时候才计算(惰性求值)
- 使用
lambda
表达式能够简化程序表达的含义,使程序更简洁明了