본문 바로가기

JAVA

배열 복사 (얕은 복사, 깊은 복사)

깊은 복사

: 객체의 실제값을 새로운 객체로 복사한다. 대개의 복사는 깊은 복사를 의미한다.

public class Main{
    public static void main(String[] args)  {
        int[] a = { 1, 2, 3, 4 };
        int[] b = new int[a.length]; 
        for (int i = 0; i < a.length; i++) {
            b[i] = a[i];
        }
    }
}

얕은 복사

: 객체의 주소 값만을 복사한다. -> 여러 객체가 같은 주소를 참조, 하나의 값을 변경하면 나머지 대상의 값도 변경된다.

public class Main{
    public static void main(String[] args)  {
        int[] a = { 1, 2, 3, 4 };
        int[] b = a;
    }
}

'JAVA' 카테고리의 다른 글

If문 vs Switch문  (0) 2023.03.16
[알고리즘] 이분탐색  (0) 2023.03.08
[Java] substring (문자열 자르기)  (2) 2023.01.21
[JAVA] HashMap 기본 및 정렬  (0) 2023.01.19
[Java] BigInteger(큰 정수)  (0) 2023.01.18