函数式接口是一种只包含一个未实现的方法(抽象方法)的接口类型。它主要用于表示行为,允许使用Lambda表达式和方法引用传递和使用行为。Java预定义的函数式接口类型包括Predicate、Function、Consumer和Supplier。
简介
函数式接口是Java 8中引入的一种新的接口类型。它只有一个未实现的方法,称为“抽象方法”。函数式接口允许将行为表示为对象,从而在程序中方便地使用和传递Lambda表达式和方法引用。
类型
Java中预定义了多个函数式接口类型,包括:
Predicate<T>
:用于测试给定对象是否符合某个条件。Function<T, R>
:用于从给定对象生成新对象或值。Consumer<T>
:用于对给定对象执行操作。Supplier<T>
:用于提供给定类型的对象。还可以创建自己的自定义函数式接口类型。
特点
函数式接口具有以下特点:
实战案例
以下是一个使用函数式接口的实战案例:
import java.util.function.Predicate; public class Main { public static void main(String[] args) { // 创建一个接收整数的Predicate接口 Predicate<Integer> isEven = number -> number % 2 == 0; // 使用Predicate接口测试给定的数字是否为偶数 boolean is10Even = isEven.test(10); System.out.println(is10Even); // true } }
在这个示例中,isEven
接口被用于测试数字是否是偶数。我们通过使用Lambda表达式实现了isEven
接口。然后我们使用isEven
接口测试了数字10是否为偶数。