Skip to content

Latest commit

 

History

History
34 lines (20 loc) · 2.07 KB

README.md

File metadata and controls

34 lines (20 loc) · 2.07 KB

Java Functional Programming Internals

Authors

Name Weibo Id Blog Mail
李豪 @计算所的小鼠标 CarpenterLee hooleeucas@163.com

Introduction

本文受启发于JavaOne 2016关于Lambda表达式的相关主题演讲Lambdas and Functional ProgrammingRefactoring to Java 8

Java 8已经发行两年多,但很多人仍然在使用JDK7。对企业来说,技术上谨慎未必是坏事,但对个人学习而言,不去学习新技术就很可能被技术抛弃。Java 8一个重要的变更是引入函数式编程Lambda表达式(lambda expression),这听起来似乎很牛,有种我虽然不知道Lambda表达式是什么,但我仍然觉得很厉害的感觉。

Java stream包是跟Lambda表达式同时添加新功能。Lambda表达式只有跟stream一起使用才能显示其真实的威力

本系列文章不打算去争论“什么才算是一门真正的函数式语言”这类问题。我们会将重点放在如何使用Java Lambda表达式,如何使用stream,以及二者背后的原理

Contents

具体内容安排如下:

  1. [Lambda and Anonymous Classes(I)](./1-Lambda and Anonymous Classes(I).md),展示如何使用Lambda表达式替代匿名内部类
  2. [Lambda and Anonymous Classes(II)](./2-Lambda and Anonymous Classes(II).md),Lambda表达式的实现原理
  3. [Lambda and Collections](./3-Lambda and Collections.md),学习Java集合框架(Java Collections Framework)新加入的方法
  4. Streams(I),展示Stream API的用法
  5. Streams(II),展示Stream规约操作的用法
  6. Functional interfaces,展示函数接口的作用,和常见函数接口
  7. Stream API的实现原理
  8. (有待扩充)