Java 中的 Lambda 表达式、函数式接口与集合框架
1. Lambda 表达式与函数式接口基础
Lambda 表达式是 Java 中一种简洁的语法,它可以使用局部变量或方法参数,但这些变量必须是 final 或实际上是 final 的。方法引用是一种紧凑的语法,用于编写引用方法的 Lambda 表达式,主要有四种类型:静态方法、特定对象的实例方法、参数上的实例方法和构造函数引用。
函数式接口是只包含一个抽象方法的接口,任何函数式接口都可以用 Lambda 表达式来实现。常见的内置函数式接口有 Supplier、Consumer、Function 和 Predicate 等,还有它们的二元版本和基本类型版本。
以下是一些关于 Lambda 表达式和函数式接口的重要规则:
- 编写简单 Lambda 表达式 :Lambda 代码中的参数类型是可选的;当主体是单个语句时,花括号和 return 关键字是可选的;当只指定一个参数且类型是隐式的时,括号是可选的。
- 判断变量能否在 Lambda 主体中使用 :局部变量和方法参数必须是 final 或实际上是 final 的才能被引用,实例和类变量则始终允许使用。
- 方法引用与 Lambda 表达式的转换 :能够将方法引用转换为常规的 Lambda 表达式,反之亦然。例如, System.out::print 和 x -> System.out.print(x) 是等价的。
- 判断接口是否为函数
超级会员免费看
订阅专栏 解锁全文
3061

被折叠的 条评论
为什么被折叠?



