我一直在找"找不到符号变量temp"错误。此代码中存在什么问题。
public int[][] transform(int[][] X)
{
int rows=temp.length-1;
int columns=temp[0].length-1;
int [][] temp= new int[columns][rows];
for (int r = 0; r < temp.length; r++)
{
for (int c = 0; c < temp[0].length; c++)
{
temp[r][c] = X[r][c];
}
}
return temp;
}
}
答案 0 :(得分:1)
也许你想要这样说:
public int[][] transform(int[][] X)
{
int rows=X.length;
int columns=X[0].length;
int [][] temp= new int[columns][rows];
for (int r = 0; r < temp.length; r++)
{
for (int c = 0; c < temp[0].length; c++)
{
temp[r][c] = X[r][c];
}
}
return temp;
}
答案 1 :(得分:0)
用以下方法替换方法中的前3行代码:
int rows=X.length;
int columns=X[0].length;
int [][] temp= new int[columns][rows];
答案 2 :(得分:0)
您已交换行和列,并且您不会将长度减去一个
int rows=X.length;
int columns=X[0].length;
int [][] temp= new int[rows][columns];
然后你的内循环就像
for (int c = 0; c < temp[r].length; c++)
最后,您可以使用Arrays.copyOf(int[], int)
之类的
for (int r = 0; r < temp.length; r++)
{
temp[r] = Arrays.copyOf(X[r], columns);
答案 3 :(得分:0)
试试这个:
public int[][] transform(int[][] X)
{
int rows=X.length-1;
int columns=X[0].length-1;
int [][] temp= new int[columns][rows];
for (int r = 0; r < temp.length; r++)
{
for (int c = 0; c < temp[0].length; c++)
{
temp[r][c] = X[r][c];
}
}
return temp;
}