System.arraycopy
는 byte[] 형태의 데이터를 자르거나 붙여서 연결할 때 사용하는 메소드이다.System.arraycopy(
src
,srcPos
,dest
,destPos
,length
)
- Object
src
: 복사하고자 하는 원본 소스이다.- int
srcPos
: 위의 원본 소스에서 어느 부분 부터 읽어올 지 위치를 정해준다.
- 처음부터 데이터를 읽어올거면 0을 넣어준다.
- Object
dest
: 복사하려는 대상이다.- int
destPos
: 위의 복사본에서 자료를 받아올 때 어느 부분 부터 쓸 것인지 위치를 정해준다.
- 처음부터 데이터를 쓰려면 0을 넣어준다.
- int
length
: 원본에서 복사본으로 데이터를 읽어서 쓸 데이터 길이이다.
// 원본
int[] rootSrc = new int[10];
// 원본에 0부터 9까지 수를 차례로 넣음
for(int i=0; i<10; i++) {
rootSrc[i] = i;
}
// 복사본
int[] destSrc = new int[10];
// 복사본에 0부터 4까지의 값을 복사함
System.arraycopy(rootSrc, 0, destSrc, 0,5);
System.out.println(Arrays.toString(destSrc));
>>> [0, 1, 2, 3, 4, 0, 0, 0, 0, 0] 출력됨