Java 函数式接口
时间: 2024-08-14 12:05:42 浏览: 56
Java函数式接口是一种特殊的接口,它只包含一个抽象方法,其余的方法可以省略,因为它们隐含地默认为`default`。这种特性使得这样的接口非常适合用于方法引用和lambda表达式的创建,这些都是Java 8引入的函数式编程特性。
在Java中,如果一个接口只有一个抽象方法,那么这个接口就被认为是一个函数式接口。例如,`java.util.Consumer<T>`, `java.util.Function<T, R>`, 和 `java.util.Predicate<T>` 等都是标准库中的函数式接口。开发者可以直接实例化这些接口,或者传递给其他方法作为参数,提供简洁、明确的代码风格。
使用函数式接口,你可以编写更简洁的代码,如:
```java
Function<String, String> capitalize = str -> str.toUpperCase();
Consumer<String> printLength = System.out::println;
```
在这里,`capitalize` 是一个接受字符串并返回大写的函数,而 `printLength` 则是一个接受字符串并打印其长度的操作。
阅读全文