Java

[중앙정보처리학원] Java* Matrix

해보구 2024. 4. 12. 09:05
public class Matrix {

    public static void main(String[] args) {

        int korScore = 77;
        int engScore = 100;
        int mathScore = 99;

        int[] scoresKim = {korScore, engScore, mathScore};
        int[] scoresPark = {100, 22, 56};
        int[] scoresHong = {40, 90, 80};

        // 2차원 배열 : 배열 안의 요소가 또다시 배열인 형태
        int[][] classScores = { scoresKim, scoresPark, scoresHong };

        /*
            {
                {77, 100, 99},
                {100, 22, 56},
                {40, 90, 80}
            }
         */
        System.out.println(classScores.length);
        System.out.println(classScores[0] == scoresKim);
        System.out.println(Arrays.toString(classScores[1]));
        System.out.println(classScores[2][1]);

        System.out.println(Arrays.toString(classScores));
        System.out.println(Arrays.deepToString(classScores));

        System.out.println("=====================");

        System.out.println("2차원배열의 2번 인덱스 주소: " + classScores[2]);
        System.out.println("scoresHong의 주소: " + scoresHong);

        System.out.println("=============================");
        // 2차원 배열의 순회
        for (int i = 0; i < classScores.length; i++) {
            for (int j = 0; j < classScores[i].length; j++) {
                System.out.printf("%d ", classScores[i][j]);
            }
            System.out.println();
        }

        // js: for ~ of, java : enhanced for loop, iteration, foreach
        System.out.println("=====================");

        for (int[] scores : classScores) {
            for (int n : scores) {
                System.out.printf("%d ", n);
            }
            System.out.println();
        }

        System.out.println("================");

        int[][] arr2by3 = {
                {10, 20, 30},
                {40, 50, 60}
        };

        int[][] arr4by5 = new int[4][5];
        for (int[] ints : arr4by5) {
            for (int anInt : ints) {
                System.out.printf("%d ", anInt);
            }
            System.out.println();
        }

    }
}

자바에서의 "매트릭스"는 행렬(matrix)을 의미할 수 있습니다. 행렬은 2차원 배열로, 행과 열의 요소로 구성됩니다. 자바에서는 2차원 배열을 사용하여 행렬을 나타낼 수 있습니다. 이를 활용하여 행렬 연산을 수행할 수 있습니다.