背景和语法
- java1.8 lambda 的本质是一个语法糖
- 由编译器推断并帮你转换包装为常规的代码,因此你可以使用更少的代码来实现同样的功能。
- lambda表达式允许你通过表达式来代替功能接口。
- lambda表达式允许你将类作为一个参数传递
- lambda表达式可以大大简化代码量(增加代码理解那么毒)
- lambda表达式和 stream 是自Java语言添加泛型(Generics)和注解(annotation)以来最大的变化。
- NetBeans 和IntelliJ IDEA 一类的工具和IDE就支持Java 8特性,包括lambda表达式,可重复的注解,紧凑的概要文件和其他特性。
lambda 语法
- (parameters) -> expression
- (parameters) ->{ statements; }
lambda 目前运用问题(低级编程->高级编程转变 知名度)
- 简洁,难懂,难以调试的问题
java1.8 Lambda 表达式类型
- Lambda 接口 函数性接口
- Lambda 接口实现
- Lambda 和匿名内部类
- @FunctionalInterace
- @AllArgsConstructor
代码简化 少写很多循环 少些很多if-else 判断模块
- 函数式接口包
- 简化 forEach
- 简化静态函数
参考链接