Java使用函数
调用另一个类时,我在使用函数时遇到一些问题 主要类别:Java使用函数,java,function,class,Java,Function,Class,调用另一个类时,我在使用函数时遇到一些问题 主要类别: public static void main(String [] args) { baseIteration(new Function() { public double calculate(double x) { return Math.sin(x) - Math.log10(x); } @Override public Object ap
public static void main(String [] args) {
baseIteration(new Function() {
public double calculate(double x) {
return Math.sin(x) - Math.log10(x);
}
@Override
public Object apply(Object t) {
// TODO Auto-generated method stub
return null;
}
}.calculate(double x),0,10.0);
}
和基本迭代函数:
public static void baseIteration(Function f, double a, double b) {
double prev = f.calculate(a);
double step = (b-a)/10;
for(double p = a+step; p<=b+10e-8; p+=step) {
double curr = f.calculate(p);
}
}
publicstaticvoidbaseiteration(函数f,双a,双b){
双上一个=f。计算(a);
双步骤=(b-a)/10;
对于(double p=a+step;pWell,Function
没有calculate
方法,它只有apply
方法。您通常不需要显式实现Function
请尝试以下操作:
public static void main(String [] args) {
baseIteration(x -> Math.sin(x) - Math.log10(x), 0, 10.0);
}
public static void baseIteration(Function<Double, Double> f, double a, double b) {
double prev = f.apply(a);
double step = (b-a)/10;
for(double p = a+step; p<=b+10e-8; p+=step) {
double curr = f.apply(p);
}
}
publicstaticvoidmain(字符串[]args){
baseIteration(x->Math.sin(x)-Math.log10(x),0,10.0);
}
公共静态void baseIteration(函数f,双a,双b){
双上一个=f。适用(a);
双步骤=(b-a)/10;
for(double p=a+step;pIt开始工作了!非常感谢!我现在对算法有问题,但是,它开始工作了!谢谢!