이 상태에서는 당연히 값을 저장할 수 없겠죠? 앞에서 배운 대로 참조 변수 ‘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;
}
}