将普通二维数组转置 交换行和列

package homework1_1;

/**
 * @description: ${description}
 * @create: 2019-02-03
 **/
public class LineAndColumnChange {
    public static double[][] tran1(double[][] a){
        int q=a.length;//行总数
        int w=a[0].length;//列总数
        double[][] b= new double[w][q];
        for (int i=0;i<w;i++){
            for (int j=0;j<q;j++){
                b[i][j]=a[j][i];
            }
        }
        return b;
    }
    public static void printTransposedMatrix(int[][] matrix) {
        for (int i = 0; i < matrix[0].length; i++) {
            for (int j = 0; j < matrix.length; j++) {
                System.out.printf("%4d", matrix[j][i]);
            }
            System.out.println();
        }
    }


    public static void printx(double[][] a){
        for(int i=0;i<a.length;i++){
            for(int j=0;j<a[0].length;j++){
                System.out.print(a[i][j]);
                System.out.print("\t");
            }
            System.out.println();
        }
    }

    public static void main(String[] args) {
        double [][] a1={{1,2},{3,4},{5,6}};
        int [][] a2={{1,2,3,4},{3,4,6,7},{5,6,9,8}};
        double[][] tran1 = tran1(a1);
        printTransposedMatrix(a2);
        printx(tran1);
    }
}

run
将普通二维数组转置 交换行和列