java二维数组转置函数
时间: 2023-10-28 14:02:52 浏览: 123
Java中可以通过以下代码实现二维数组的转置函数:
```java
public class ArrayTransposition {
public static void main(String[] args) {
int[][] arr = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int[][] transposedArr = transpose(arr);
System.out.println("原始数组:");
printArray(arr);
System.out.println("转置后的数组:");
printArray(transposedArr);
}
public static int[][] transpose(int[][] arr) {
int row = arr.length;
int col = arr[0].length;
int[][] transposedArr = new int[col][row];
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
transposedArr[j][i] = arr[i][j];
}
}
return transposedArr;
}
public static void printArray(int[][] arr) {
int row = arr.length;
int col = arr[0].length;
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
```
运行上述代码,将会得到以下输出结果:
```
原始数组:
1 2 3
4 5 6
7 8 9
转置后的数组:
1 4 7
2 5 8
3 6 9
```
在转置函数`transpose()`中,我们首先获取二维数组的行数和列数,然后创建一个与转置后的数组相同列数和行数的新数组。接着,使用两层嵌套的循环遍历原始数组的元素,并将原始数组中的元素赋值给转置后的数组对应的位置。最后,返回转置后的数组。
在`printArray()`函数中,我们使用两层嵌套的循环遍历二维数组,并将每个元素打印出来,以便在控制台上显示数组的内容。
阅读全文