Java 阵列交换-二维阵列
我正在研究在二维数组中交换索引。我似乎在正确的轨道上,但它没有以我想要的方式交换阵列 第一行的索引Java 阵列交换-二维阵列,java,arrays,Java,Arrays,我正在研究在二维数组中交换索引。我似乎在正确的轨道上,但它没有以我想要的方式交换阵列 第一行的索引j需要与第2行的索引j交换: for (int j = 0; j < array.length ; j++){ int temp = array[row1][j] array[row1][j]=array[j][row1] array[j][row1] = temp ; } for(int j=0;j
j
需要与第2行的索引j
交换:
for (int j = 0; j < array.length ; j++){
int temp = array[row1][j]
array[row1][j]=array[j][row1]
array[j][row1] = temp ;
}
for(int j=0;j
如果您有任何关于如何以最佳方式解决此问题的想法,我们将不胜感激 由于java中的二维数组实际上是对其他数组的引用数组,您可以简单地交换引用,如下所示:
public static void swapRows(int array[][], int rowA, int rowB) {
int tmpRow[] = array[rowA];
array[rowA] = array[rowB];
array[rowB] = tmpRow;
}
/edit:编辑答案,因为我之前对其进行了误解**请告诉我们什么是“你想要的方式。你正在尝试转置一个方阵吗?你想从
[[0,1,2,3,4],[5,6,7,8,9]
到[[5,6,7,8,9],[0,1,2,3,4]]
?是的。但是,请记住我有4行。它们不能按特定顺序交换。如果需要,我可以将第1行与第3行交换,或者将第2行与第1行交换,等等。嗯,我想人们甚至可以从int col=row+1
开始,例如数组[10][10]不需要与它的对立面交换。我仍然没有弄清楚。我必须循环索引j,并将这些索引从第一行交换到第二行。@MH1993编辑了答案。这就是你想要的吗?