修改教材P208页第10.12题,使用Lambda表达式实现calculate()方法,使该方法可以计算0.5×(a+b)
时间: 2024-02-11 19:04:21 浏览: 75
lambda表达式教程
4星 · 用户满意度95%
好的,我来修改一下。
原题为:
```
public class Main {
public static void main(String args[]) {
Calculator calculator = new Calculator();
int a = 10;
int b = 5;
double result = calculator.calculate(a, b);
System.out.println(result);
}
}
class Calculator {
public double calculate(int a, int b) {
return 0.5 * (a + b);
}
}
```
使用Lambda表达式实现calculate()方法可以这样写:
```
public class Main {
public static void main(String args[]) {
Calculator calculator = (a, b) -> 0.5 * (a + b);
int a = 10;
int b = 5;
double result = calculator.calculate(a, b);
System.out.println(result);
}
}
interface Calculator {
double calculate(int a, int b);
}
```
Lambda表达式允许我们将一个方法作为参数传递给另一个方法。在上面的代码中,我们定义了一个Calculator接口,它有一个calculate()方法,该方法接受两个整数参数并返回一个double类型的结果。然后,我们使用Lambda表达式定义了一个匿名Calculator对象,该对象的calculate()方法实现了0.5×(a+b)的计算。最后,我们调用了这个匿名对象的calculate()方法,并输出了结果。
阅读全文