small steps/1일 1코딩 - 코딩을 내 몸처럼
[1일1코딩][Java] 배열 복습 : 선언, 할당, 초기화, 삭제
꿈꾸는개발자maker
2022. 3. 10. 21:41
728x90
public class practice_everyday13 {
public static void main(String[] args) {
// 배열
// 같은 자료형의 데이터의 여러개의 값을 저장할 수 있는 공간
// 배열 선언
int[] arr;
// 배열 할당
int[] arr1 = new int[3]; // 방법1 : 주로 Java에서 사용
int arr2[] = new int[3]; // 방법2 : 주로 C에서 사용
// 배열 초기화
// 1)인덱스
// 2)중괄호 {}
// 3)for문 이용
// 1)인덱스
arr1[0] = 1;
arr1[1] = 2;
arr1[2] = 3;
System.out.println(arr1[0]); // 1
System.out.println(arr1[1]); // 2
System.out.println(arr1[2]); // 3
// 2)중괄호 {}
int[] arr3 = {1,2,3};
// int arr3[] = {1,2,3}; // error
for(int i=0; i<arr3.length; i++) {
System.out.print(arr3[i]+ " "); // 1 2 3
}
System.out.println();
// 3)for문
// 초기화할 값에 ‘규칙’이 존재할 경우 사용가능
int[] arr4 = new int[3];
for(int i=0; i<arr4.length; i++) {
arr4[i] = i+3;
System.out.print(arr4[i]+" ");
}
System.out.println();
// 배열 수정(크기 변경)?
int size = 5;
int[] dArr = new int[size];
System.out.println("dArr길이:"+dArr.length);
System.out.println("dArr주소:"+dArr);// [I@6d06d69c
dArr = new int[5]; // 같은 배열 길이
System.out.println(dArr); // [I@7852e922 주소값이 다르다
dArr = new int[4]; // 배열길이 4로 수정. 과연 주소값이 같을까?
System.out.println(dArr); // [I@4e25154f
// 전부 다른 주소값이 나왔다. 보이기에는 길이가 수정된 것처럼 보이나
// 실제로는 새로 만든 값으로 대체시킨 것
// 배열 삭제
// 배열 삭제 = null
dArr = null;
// 배열에 null을 넣게되면 기존 주소값이 null로 바뀌면서 연결된 값도 끊어지면서
// 사실상 삭제 효과가 나타난다
}
}
728x90
반응형