작성
·
233
답변 2
0
배열 arr1이 있을때
얕은 복사
1. arr2 = arr1;
2. arr2 = arr2.clone(); -> 기본타입배열이면 깊은복사, 참조타입배열이면 얕은복사.
깊은 복사
arr2 = Arrays.copyOf(arr1, arr1.length);
인 것 같습니다!!
0
안녕하세요^^
저는 clone() 메서드가 깊은복사의 대표메서드로 알고있습니다. 실제 아래코드를 실행하면 arr 배열은 원본 그대로 있고 tmp만 정렬되는 것을 볼 수 있습니다.
int[] tmp=arr.clone();
Arrays.sort(tmp);
for(int i=0; i<n; i++){
System.out.print(arr[i] + " ");
}
아래 블로그에도 clone()은 깊은 복사로 정리되어 있네요.
친절한 답변 감사합니다!