프로그램 개발/미분류

[LeetCode/Java]Array and String - Introduction to 2D Array

(ㅇㅅㅎ) 2020. 8. 21. 11:43
728x90
반응형

나중에 다시 찾아보기 위한 한글 번역 및 요약

 

2차원 배열이란?

1차원 배열과 유사하게 2차원 배열도 일련의 원소로 구성됩니다.

그러나 원소는 선이 아닌 1차원 배열로 구성이 됩니다.

 

원리

일부 언어에서는 다차원 배열이 내부적으로 1차원 배열로 구현되는 반면 다른 언어에서는 실제로 다차원 배열이 전혀 없습니다.

Java의 경우 2차원 배열은 실제로 M개의 요소를 포함하는 1차원 배열이며, 각 요소는 N개의 정수 배열입니다.

동적 2차원 배열

1차원 동적 배열과 유사하게 동적 2차원 배열을 정의할 수 있습니다.

 

다음과 같이 사용이 가능합니다.

public class Main {
    private static void printArray(int[][] a) {
        // 입력 받은 2차원 배열의 1차원 배열 출력으로 확인
        for (int i = 0; i < a.length++i) {
        System.out.println(a[i]);
        }
        // 입력 받은 2차원 배열 1차원 원소별로 출력 확인
        for (int i = 0; i < a.length++i) {
            for (int j = 0; a[i] != null && j < a[i].length++j) {
                System.out.print(a[i][j] + " ");
            }
            System.out.println();
        }
    }
    // Main 부분인 이곳에서 부터 코드는 실행됩니다.
    public static void main(String[] args) {
        // 예제 1
        System.out.println("Example I:");
        // 2차원 배열을 생성 및 0으로 초기화
        int[][] a = new int[2][5];
        // printArray를 이용하여 출력으로 배열을 확인
        printArray(a);
        
        // 예제 2    
        System.out.println("Example II:");
        // 2차원 배열을 생성 및 초기화
        int[][] b = new int[2][];
        // printArray를 이용하여 출력으로 배열을 확인
        printArray(b);
 
        // 예제 3
        System.out.println("Example III:");
        // 2차원 배열의 0번째 1차원 배열 초기화
        b[0= new int[3];
        // 2차원 배열의 1번째 1차원 배열 초기화
        b[1= new int[5];
        // printArray를 이용하여 출력으로 배열을 확인
        printArray(b);
    }
}
 

 

 

반응형