用java使给定的一个3*3的二维整型数组转置,即行列互换,用方法的方式写出来。
时间: 2024-03-24 15:41:52 浏览: 58
C语言将给定的3× 3的整型数组转置(行列互换)。
可以使用以下 Java 方法来实现3*3的二维整型数组转置:
```java
public static void transpose(int[][] matrix) {
for (int i = 0; i < matrix.length; i++) {
for (int j = i; j < matrix[0].length; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
```
这个方法使用双重循环遍历数组,对于每个位置 (i,j),将其与位置 (j,i) 上的元素交换即可实现转置。注意,因为转置后的数组仍然是3*3的,所以只需要遍历前三行和前三列即可,而不需要遍历整个数组。使用这个方法,可以将给定的3*3二维整型数组进行转置。完整的Java代码如下:
```java
public class TransposeMatrix {
public static void main(String[] args) {
int[][] matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
System.out.println("Original matrix:");
printMatrix(matrix);
transpose(matrix);
System.out.println("Transposed matrix:");
printMatrix(matrix);
}
public static void transpose(int[][] matrix) {
for (int i = 0; i < matrix.length; i++) {
for (int j = i; j < matrix[0].length; j++) {
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
public static void printMatrix(int[][] matrix) {
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[0].length; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
}
}
```
这个程序首先定义了一个3*3的二维整型数组 `matrix`,然后调用了 `transpose` 方法,将数组进行转置。最后,程序调用 `printMatrix` 方法打印出转置后的矩阵。
阅读全文