Jdk8 新增一个重要的包:java.util.function。该包下所有的接口都是函数式接口:@FunctionalInterface。
主要分为四大类:Supplier、Consumer、Predicate、Function。
| 接口 | 方法 | 参数 | 返回值 | 说明 |
|---|---|---|---|---|
| Supplier |
T get(); | 无 | T | 供给型;无参,返回一个指定泛型的对象 |
| Consumer |
void accept(T t); | T | 无 | 消费型;传入一个指定泛型的参数,无返回值 |
| Predicate |
boolean test(T t); | T | Boolean | 断言型:输入一个参数,返回判断结果 |
| Function<T, R> | R apply(T t); | T | R | 方法型;输入一个参数,得到一个结果 |
如果T/R为int/long/double,该包下定义了相关接口,如IntSupplier、IntConsumer、IntFunction、IntPredicate……