java 自定义函数式接口的 使用demo
时间: 2023-11-28 16:54:46 浏览: 98
Java中的Interface使用demo
下面是一个简单的 Java 自定义函数式接口的使用示例:
```java
// 自定义函数式接口
@FunctionalInterface
interface MyFunction {
int calculate(int x, int y);
}
public class Main {
public static void main(String[] args) {
// 使用 lambda 表达式实现接口方法
MyFunction add = (x, y) -> x + y;
MyFunction subtract = (x, y) -> x - y;
// 输出运算结果
System.out.println("3 + 4 = " + add.calculate(3, 4));
System.out.println("5 - 2 = " + subtract.calculate(5, 2));
}
}
```
上述代码中,我们先定义了一个自定义函数式接口 `MyFunction`,它包含一个抽象方法 `calculate`,该方法接受两个 `int` 类型参数并返回一个 `int` 类型值。接着,我们使用 `@FunctionalInterface` 注解标记该接口为函数式接口,确保该接口只包含一个抽象方法。
在 `Main` 类中,我们使用 lambda 表达式分别实现了 `MyFunction` 接口的 `calculate` 方法,实现了加法和减法运算。最后,我们输出了运算结果。
注意,Java 8 中已经提供了许多内置的函数式接口,如 `java.util.function` 包中的 `Consumer`、`Supplier`、`Function`、`Predicate` 等,可以直接使用。自定义函数式接口通常用于特定场景下的函数式编程。
阅读全文