Java實現矩陣變換

/**
 * @Author Xiaoqiang Miao
 * @Date 2020/6/5 17:14
 * @Version 1.0
 */
public class JuZhen {
    //數組變換
    public static int [][] change(int [][] array){
        /**
         * 這個臨時數組爲矩陣變換後的數組
         * 矩陣爲二維數組 故需要爲二維數組的行和列進行賦值
         * array.length 代表原始數組的行數
         * array[0].length 代表原始數組的列數
         */
        //臨時數組的行列數與原始數組行列數交換
        int [][] temp = new int [array[0].length][array.length];
        int dst = array.length - 1;
        for (int i = 0; i < array.length; i++, dst--){
            for (int j = 0; j < array[0].length; j++){
                temp[j][dst] = array[i][j];
            }
        }
        return temp;
    }
    //數組打印
    public static void print(int[][] array){
        for (int i = 0; i < array.length; i++){
            for (int j = 0; j < array[0].length; j++){
                System.out.print(array[i][j] + "   ");
            }
            System.out.println();
        }
    }
    public static void main(String [] args){
        /**
         * 數組中數組下標是從0開始的,但是定義數組個數確實從1開始的
         * 想想實際情況也應該知道這個事啊,數組中如果沒有一個元素
         * 那這個數組的意義何在
         */
        //數組聲明
        int [][] array = new int[3][4];
        //數組賦值
        array[0][0] = 1;
        array[0][1] = 2;
        array[0][2] = 3;
        array[0][3] = 4;
        array[1][0] = 5;
        array[1][1] = 6;
        array[1][2] = 7;
        array[1][3] = 8;
        array[2][0] = 9;
        array[2][1] = 10;
        array[2][2] = 11;
        array[2][3] = 12;
        System.out.println("數組變換前爲:");
        print(array);
        System.out.println("矩陣變換後爲:");
        int [][] temp = change(array);
        print(temp);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章