程序代码如下:
package chapter02;
import java.util.Arrays;
/*
* 矩阵转置的实现(简单版)
*/
public class CH02_04 {
public static void main(String[] args) {
int[][] arr =
{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
int rows = arr.length;
int cols = arr[0].length;
int[][] arrResult = new int[cols][rows];
//填充结果数组
for(int i = 0; i < arrResult.length; i++){
Arrays.fill(arrResult[i], 0);
}
//输出矩阵转置前的矩阵
for(int i = 0; i < arr.length; i++){
System.out.println(Arrays.toString(arr[i]));
}
//转置矩阵
for(int i = 0; i < rows; i++){
//外循环,从原来矩阵的第i行开始
for(int j = 0; j < cols; j++){
//内循环,转置矩阵
arrResult[j][i] = arr[i][j];
}
}
System.out.println();
//输出转置后的矩阵
for(int i = 0; i < arrResult.length; i++){
System.out.println(Arrays.toString(arrResult[i]));
}
}
}
执行结果如下:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
[1, 4, 7]
[2, 5, 8]
[3, 6, 9]