자바에서 다차원 배열의 복제는 최상위 1레벨만 수행한다.
예를 들어 1차원배열의 복제를 생각해보면,
int[] a = {1, 2, 3};
int[] b = a.clone();
이 경우에 b는 a의 배열을 공유하는 것이 아니라 복제한다. (깊은 복사, Deep copy)
int[][] a = {{1, 2, 3, 4}, {5, 6, 7}};
int[][] b = a.clone();
// 1차원배열만 복제되어 b[0], b[1]의 주솟값만 따로가지고, 그 아래 레벨의 배열은 복제되지않고 공유된다.
하지만 2차원 배열에서는 최상위 1레벨 즉, 1차원만 복제하고
그 아래 레벨에 대해서는 그냥 공유만 한다. (얕은 복사, Shallow copy)
'기타 개발공부' 카테고리의 다른 글
생활코딩 리액트 2022 ver (2) (0) | 2022.07.30 |
---|---|
생활코딩 리액트 2022 ver (1) (0) | 2022.07.30 |
파이썬 진수변환 총정리! (0) | 2022.04.03 |
파이썬 한줄에 여러개입력받기 (0) | 2022.03.19 |
파이썬 2차원리스트 여러개 입력받기 (0) | 2022.03.10 |