我试图在java中比较2个变量,但它给了我错误,我无法弄明白。
我正在读取矩阵元素,然后将其放入temp中,然后将该temp变量放入数组中。但是当我尝试将矩阵元素放入temp并且我比较元素时,它会出错。 错误:需要数组,但找到浮点数。有谁知道如何纠正这个?
public float[] toSortedArray()
{
float b[];
float temp;
int index=0;
for(int i=1; i<=m; i++)
{
for(int j=1; j<=n; j++)
{
temp=a[m][n];
b[index++]=temp;
}
}
Arrays.sort(b);
System.out.print("[");
for(int z=0; z<(m*n)-1; z++)
{
System.out.print(b[z]+", ");
}
System.out.print(b[(m*n)-1]+"]\n");
}
答案 0 :(得分:2)
这需要做几件事:
传递m,n参数以及原始2D数组,如
public float[] toSortedArray(float[][] a, int m, int n)
将b数组定义为
float b[] = new float[m*n];
在for循环中(i和j var中的一个)(两个循环应该从0开始)使用
temp=a[i][j];
而不是
temp=a[m][n];
最后返回b。
return b;