[JAVA] 배열복사 (System.arraycopy)
배열을 복사하는 방법은 두가지가 있다.
1. for문을 이용해 하나씩 복사하는 방법
2. System.arraycopy() 메서드 사용
첫번째 방법은 익숙한 방법이므로 생략하고 이번에는 System.arraycopy메서드에 대해 알아보겠다.
System.arraycopy(src,srcPos,dest,destPos,length)
src
: 복사할 배열 이름
srcPos
: 복사할 배열의 첫번째 위치
dest
: 복사해서 붙여넣을 대상 배열 이름
destPos
: 붙여넣기를 시작할 첫 번째 위치
length
: src에서 dest로 자료를 복사할 요소의 갯수
예제로 아래의 bookArray1
객체 배열을 bookArray2
로 복사해보겠다.
Book [] bookArray1 = new Book[3];
Book [] bookArray2 = new Book[3];
bookArray1[0]= new Book("태백산맥","조정래");
bookArray1[1]= new Book("데미안","헤르만 헤세");
bookArray1[2]= new Book("어떻게 살 것인가","유시민");
System.arraycopy(bookArray1,0,bookArray2,0,3);
for (int i=0;i<bookArray2.length;i++) {
bookArray2[i].showBookInfo();
}
/* 출력결과
태백산맥, 조정래
데미안, 헤르만 헤세
어떻게 살 것인가, 유시민
*/
for문을 이용하는 것보다 쉽게 복사가 완료되었다
Author And Source
이 문제에 관하여([JAVA] 배열복사 (System.arraycopy)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kekim20/JAVA-배열복사-System.arraycopy와-얕은-복사shallow-copy깊은-복사deep-copy저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)