[JAVA] 배열복사 (System.arraycopy)

4377 단어 Java복사배열Java

배열을 복사하는 방법은 두가지가 있다.

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문을 이용하는 것보다 쉽게 복사가 완료되었다

좋은 웹페이지 즐겨찾기