enter code here大家好,有人可以解释一下我在此功能中遇到的问题:

public class Summer{
 public <X,Y> Y[] sum(X[] inArr, Y first, SumFunction<Y,X> f, Y[] outArr){
  for(int i = 0; i < inArr.length; i++){
   outArr[i] = f.op(inArr[i], first); //here I have problem
   first = outArr[i];
  }
  return outArr;
 }
}


我收到一个错误:

The method op(Y, X) in the type SumFunction<Y,X> is not applicable for the arguments (X, Y)


我需要使用此功能,我该怎么做,谢谢您的建议

最佳答案

我认为您必须调用f.op(首先,在Array [in]中)。
Sum Function的open()方法似乎将Y作为第一个参数,将X作为第二个参数。

07-26 06:09