使用Lambda 表达式实现calculate () 方法,使该方法可以计算1/2(a+b)。
时间: 2024-01-22 10:19:07 浏览: 104
可以使用Lambda表达式和函数式接口来实现这个方法。示例代码如下:
```
public class Calculator {
public static void main(String[] args) {
calculate(10, 20, (a, b) -> (double) (a + b) / 2);
}
public static void calculate(int a, int b, CalculateInterface calculateInterface) {
double result = calculateInterface.calculate(a, b);
System.out.println(result);
}
}
interface CalculateInterface {
double calculate(int a, int b);
}
```
在这个示例中,我们定义了一个函数式接口`CalculateInterface`,它包含了一个`calculate()`方法,接受两个整数参数并返回一个双精度浮点数结果。
然后我们在`Calculator`类中定义了一个`calculate()`方法,它接受两个整数参数和一个`CalculateInterface`类型的函数式接口作为参数。在这个方法中,我们调用了传入的函数式接口的`calculate()`方法来计算1/2(a+b)的值,并将结果打印出来。
最后,在`main()`方法中,我们通过Lambda表达式实现了一个`CalculateInterface`接口的匿名实现类,用于计算1/2(a+b)的值,并将该实现作为参数传递给`calculate()`方法进行计算。
阅读全文