π λ°°μ΄ λ³΅μ¬ ν¨μ
π‘ μμ 볡μ¬μ κΉμ 볡μ¬
- μμ 볡μ¬
- λ¨μν κ°μ²΄μ μ£Όμ κ°λ§μ 볡μ¬νλ κ²
- 볡μ¬λ λ°°μ΄μ΄λ μλ³Έλ°°μ΄μ΄ λ³κ²½λ λ μλ‘ κ°μ κ°μ΄ κ°μ΄ λ³κ²½
- κΉμ 볡μ¬
- κ°μ²΄μ μ€μ κ°μ μλ‘μ΄ κ°μ²΄λ‘ 볡μ¬νλ κ²
- 볡μ¬λ λ°°μ΄μ΄λ μλ³Έλ°°μ΄μ΄ λ³κ²½λ λ μλ‘ κ°μ κ°μ λ°λμ§ μμ
clone()
, arraycopy()
, copyOf()
: κ°μ²΄ λ°°μ΄μ 볡μ¬
- 2μ°¨μμ κ²½μ° A[r][c]μ κ²½μ° A[r]λ§ κΉμ 볡μ¬κ° λ¨
β 1μ°¨μ λ°°μ΄μ κΉμ 볡μ¬
1. Object.clone()
int[] A = {1, 2, 3};
int[] B = A.clone();
2. Arrays.copyOf()
int[] A = {1, 2, 3};
int[] B = Arrays.copyOf(A, A.length);
int[] B = Arrays.copyOfRange(A, 1, 3);
3. System.arraycopy()
int[] A = {1, 2, 3};
int[] B = new int[A.length];
System.arraycopy(A, 0, B, 0, A.length);
β 2μ°¨μ λ°°μ΄μ κΉμ 볡μ¬
System.arraycopy()
int[][] A = {{1,2,3},{4,5,6}};
int[][] B = new int[A.length][A[0].length];
for(int i = 0; i < B.length; i++) {
System.arraycopy(A[i], 0, B[i], 0, A[0].length);
}
2. Arrays.copyOf()
int[][] A = {{1,2,3},{4,5,6}};
int[][] B = new int[A.length][A[0].length];
for (int i = 0; i < B.length; i++) {
B[i] = Arrays.copyOf(A[i],A[i].length);
}