Introduction
本系列文将帮助你理解Java函数式编程的用法、原理。
本文受启发于JavaOne 2016关于Lambda表达式的相关主题演讲Lambdas and Functional Programming和Refactoring to Java 8。
Java 8已经发行两年多,但很多人仍然在使用JDK7。对企业来说,技术上谨慎未必是坏事,但对个人学习而言,不去学习新技术就很可能被技术抛弃。Java 8一个重要的变更是引入函数式编程和Lambda表达式(lambda expression
),这听起来似乎很牛,有种我虽然不知道Lambda表达式是什么,但我仍然觉得很厉害的感觉。
Java stream包是跟Lambda表达式同时添加新功能。Lambda表达式只有跟stream一起使用才能显示其真实的威力。
本系列文章不打算去争论“什么才算是一门真正的函数式语言”这类问题。我们会将重点放在如何使用Java Lambda表达式,如何使用stream,以及二者背后的原理。
Contents
具体内容安排如下:
- Lambda表达式和匿名内部类(I),展示如何使用Lambda表达式替代匿名内部类,说明Lambda表达式和函数接口的关系。
- Lambda表达式和匿名内部类(II),Lambda表达式的实现原理。
- Lambda表达式和Java集合框架,学习Java集合框架(Java Collections Framework)新加入的方法。
- Java Stream API入门篇,Stream API基本用法。
- Java Stream API进阶篇,Stream规约操作用法,顺道说明接口静态方法和默认方法以及方法引用的概念。
- 深入理解Java Stream流水线,Stream流水线的实现原理。
- Stream并行实现原理(待写)
- Java Stream API性能测试,Stream API性能评测。
本文github地址
更多内容欢迎访问>>博主github主页<<