Section 20.3: 배열 복사하기
static 메소드인 Array.Copy()
를 통해 배열의 일정 부분을 원본 (source) 과 대상 (destination) 모두에 대해 인덱스 값 0 을 사용하여 복사하기:
var sourceArray = new int[] { 11, 12, 3, 5, 2, 9, 28, 17 };
var destinationArray= new int[3];
Array.Copy(sourceArray, destinationArray, 3);
// destinationArray 는 11,12 그리고 3 의 값을 갖게 된다
instance 메소드인 CopyTo()
를 통해 배열 전체를 원본 (source) 인덱스 값 0 과 주어진 대상 (destination) 인덱스 값을 사용하여 복사하기:
var sourceArray = new int[] { 11, 12, 7 };
var destinationArray = new int[6];
sourceArray.CopyTo(destinationArray, 2);
// destinationArray 는 0, 0, 11, 12, 7 그리고 0의 값을 갖게 된다
Clone
은 배열 객체의 사본을 생성할 때 사용된다.
var sourceArray = new int[] { 11, 12, 7 };
var destinationArray = (int)sourceArray.Clone();
// destinationArray 가 생성되고 값은 11,12,17 을 갖게 된다.
CopyTo
와 Clone
메소드는 각 요소가 원본 (original) 배열의 요소들과 동일한 객체를 참조하게 되는 얕은 복사 (shallow copy) 를 수행하게 된다.
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
[출처] https://books.goalkicker.com/CSharpBook/
반응형
'번역 > C# Notes for Professionals' 카테고리의 다른 글
20.5: 다차원 배열 (0) | 2021.04.21 |
---|---|
20.4: 두개의 배열이 동등한지 (equality) 비교하기 (0) | 2021.04.21 |
20.2: 배열 선언 시 기본값이 아닌 값들로 채워 초기화하기 (0) | 2021.04.20 |
20.1: 배열 선언하기 (0) | 2021.04.19 |
19.17: 현재 날짜 정보 구하기 (0) | 2021.04.14 |