이 상태에서는 당연히 값을 저장할 수 없겠죠? 앞에서 배운 대로 참조 변수 ‘0’의 1차원 배열에서 0번 인덱스에 10을 넣겠다고 코드를 작성해도 실행하면 오류가 발생합니다.

    public class ArrayExam2 {
        public static void main(String[] args) {
            int[][] array5 = new int[3][];
            array5[0][0] = 10;
        }
    }

     

    실행결과

    Exception in thread "main" java.lang.NullPointerException
        at ArrayExam2.main(ArrayExam2.java:6)

     

    array5 배열의 참조 변수 ‘0’이 가리키는 1차원 배열이 없기 때문입니다. 따라서 반드시 참조 변수가 가리킬 배열을 만들어줘야 합니다. 한 개짜리 1차원 배열을 만들어보겠습니다.

    public class ArrayExam2 {
        public static void main(String[] args) {
            int[][] array5 = new int[3][];
            array5[0] = new int[1];
            array5[0][0] = 10;
        }
    }
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.