这是一个矩阵添加功能。 错误:int [] []无法转换为int
class te {
public static int r,c;
public static double [][] add(double a[][],double b[][]){
int c[][] = new int[r][c];
for(int i = 0;i<=r;i++) {
for(int j = 0; j<=c;j++){
c[i][j] = a[i][j] + b[i][j];
}
}
return c;
}
}
答案 0 :(得分:6)
四件事:
本地定义的c
阴影具有相同名称的类的static
字段。不要这样做,因为它会导致混淆,在这种情况下会导致编译错误。我们将其重命名为z
。
本地定义的c
是int[][]
的数组,您试图将其用作函数的返回值。后者定义为double[][]
。所以编译器抱怨。请改用double z[][] = new double[r][c];
。
将i <= r
替换为i < r
,将j <= c
改为。
Java约定要求类名使用“CamelCase”。将其重命名为Te
。
(1)和(2)将修复编译错误,(3)在运行时获得的数组越界错误。 (4)有助于使您的代码可读。