int[] arr; int arr[]; //배열 변수는 참조 변수에 속한다. //stack 영역에서 생성된 배열 변수는 heap 영역에 생성된 배열 객체를 참조한다.
int[] arr1 = {1, 2, 3}; char[] arr2 = {'a', 'b', 'c'}; String[] arr3 = {"자바", "정말", "어렵네요"}; {} : 블록 안의 값을 항목으로 가지는 배열 객체를 heap 영역에 생성하고, 생성한 배열 객체의 번지를 반환한다. 배열 객체 arr1, arr2, arr3는 반환된 배열 객체의 번지를 저장해 객체를 참조하게 된다.
int[] arr = new int[5]; int[] arr = null; //배열 객체를 참조하지 않는 상태이다. arr = new int[5]; //길이가 5인 배열 객체를 참조한다. // arr 배열에 5개의 숫자 저장 arr3[4] = 3; arr3[2] = 100; arr3[0] = 20; arr3[1] = 50; arr3[3] = 200; //배열의 길이로 배열 생성 후 배열의 인덱스를 이용해 값을 지정해줄 수 있다. int[] arr = new int[5]; for(int i=0; i<arr.length; i++){ arr[i] = i; } // 배열은 같은 자료형만 저장 가능하다. // String[] arr4 = {1, "hello", true, 1.4}; -> 안됨 String[] arr5 = new String[3]; //null 3개가 채워짐. null은 값이 비어있다는 표현 // "null" -> 문자열, null -> 값없음. 주의 요망