Java 中的函数式接口与 Lambda 表达式
1. 函数式接口与 Lambda 表达式基础
在 Java 中,以前要让一个方法接收 Testable 实例并执行每个类实现的 test 方法,需要声明一个接口和两个类。不过,Java 8 引入了函数式接口,Java 9 则让我们在代码需要函数式接口时能轻松提供兼容的 Lambda 表达式,从而用更少的代码实现相同的目标。
1.1 函数式接口的定义
函数式接口是满足以下条件的接口:它有一个单一的抽象方法或单一的方法需求。我们可以使用 Lambda 表达式、方法引用或构造函数引用创建函数式接口的实例。
1.2 IntPredicate 函数式接口
IntPredicate 函数式接口表示一个接受 int 类型参数并返回 boolean 结果的函数。布尔值函数也被称为谓词。该接口定义在 java.util.function 中,使用前需要导入。
以下是 filterNumbersWithPredicate 方法的代码:
import java.util.function.IntPredicate;
import java.util.ArrayList;
import java.util.List;
public List<Integer> f
超级会员免费看
订阅专栏 解锁全文

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



