如何使用双函数作为另一个函数的参数?

问题描述

您好!我正在编写代码一个函数需要使用另一个函数作为参数。

我的代码

public static double func(double a,double b,double f(double c))
{
    return f(a)*f(b)
    
}

我如何使它工作(Eclipse 说一切都不好)?

谢谢!

解决方法

查看DoubleFunction<T>(甚至更好的DoubleUnaryOperator

public static double func(double a,double b,DoubleFunction<Double> f) {
  return f.apply(a) * f.apply(b);
}

并调用它

func(2,2,d -> d + 1); // 9.