我有一个矩阵类,我想在这个类中创建一个名为 map 的函数,它看起来像这样
public void map(T fn) {
//do something
}
Run Code Online (Sandbox Code Playgroud)
该函数背后的想法是作为参数 fn,它可以是任何方法并将此方法应用于矩阵中的每个数字。
它背后的想法是针对神经网络上的编码训练视频,但我尝试在 Java 中对其进行操作,但没有奏效。我搜索 lambda 表达式,但是当我使用它时,它只让我传递像 Math.cos(arg ) 里面有一个参数。但我希望它在没有任何参数的情况下传递当前函数看起来像这样
interface lambda<T> {
double foo(T fn);
}
public void map(T fn) {
for(int i = 0 ; i< this.getRow() ; i++) {
for(int j = 0 ; j< this.getCol(); j++) {
int a = i;
int b = j;
lambda mycode = (T) -> setData(matrix[a][b], fn);
matrix[i][j] = mycode.foo(fn);
}
}
}
private double setData(double data, T fn) { …Run Code Online (Sandbox Code Playgroud) java ×1