JAVA - 배열 복사 ArrayCopy , 객체 배열

Posted 02 2, 2009 13:38, Filed under: Language/JAVA

▣ 기본 데이터 타입을 이용한 배열 클래스의 예
◈ byte[]
◈ int[]
◈ long[]
◈ float[]
◈ double[]
◈ char[]

▣ 클래스를 이용한 배열 클래스의 예
◈ String[]
◈ Image[]

기본 데이터 타입뿐만 아니라 클래스에도 브래킷([])를 붙여서 새로운 배열 데이터 타입을 만들 수 있습니다. 결론적으로 배열 데이터 타입은 브래킷([])이 붙은 새로운 형태의 클래스입니다. 배열 데이터 타입을 아예 배열 클래스라고 부르겠습니다. 배열 클래스는 new를 이용해서 객체를 생성하며, 배열의 개수를 지정하기 위해서 브래킷([]) 안에 첨자를 사용합니다.

--------------------- 배열 복사 ----------------------------------------

public class ArrayTest {
        int arr[] = new int[10];
    int[] source  = new int[]{5, 4, 6, 9, 7, 9};
    int[] target = {100, 200, 300, 400, 500, 600,700};
   
    public void arrayCopy1()
    {
        // System.arraycopy(); 를 이용한 선택 부분 복사
        // source의 2번째(0,1,2번째) 요소부터 4개가 복사
        // target에서는 3번째(0,1,2,3번째) 자리에 복사
            System.arraycopy(source, 2, target, 3, 4);
            for(int i=0; i<target.length; i++) {
                System.out.println("target["+i+"]:" + target[i]);
            }
            System.out.println();
                int[] source  = new int[]{5, 4, 6, 9, 7, 9};
                //clone()을 이용한 메모리 모두 복사
                int[] target = (int[])source.clone(); // 다운 캐스팅    
       for(int i=0; i<target.length; i++){
            System.out.println("target["+i+"] : " + target[i]);
        }
    }

        public static void main(String[] arr)
        {
                ArrayTest at = new ArrayTest();
                at.arrayCopy1();
        }
}


--------------------- 객체 배열 ----------------------------------------

public class ArrayTest {
    private String name;
    private String kind;
   
    public ArrayTest(String name, String kind) {
        this.name = name;
        this.kind = kind;
    }
    public String toString() {
        return this.kind + ":" + this.name;
    }
        public static void main(String[] arr)
        {
        //1. 객체배열의 생성
        ArrayTest[] dog = new ArrayTest[5];
        for(int i=0; i<dog.length; i++)    
        {
            System.out.println("Dog[" + i + "] : " + dog[i]);
        }
       
        //2. 객체배열의 참조변수에 메모리할당
        dog[0] = new ArrayTest("쫑쫑이","불독");
        dog[1] = new ArrayTest("워리","똥개");
        dog[2] = new ArrayTest("개똥이","진도개");
        dog[3] = new ArrayTest("발리","푸들");
        dog[4] = new ArrayTest("투덜이","잡종");        
        for(int i=0; i<dog.length; i++)
        {
                System.out.println("Dog[" + i + "] : " + dog[i]);
        }
        }
}
/*
Dog[0] : null
Dog[1] : null
Dog[2] : null
Dog[3] : null
Dog[4] : null
Dog[0] : 불독:쫑쫑이
Dog[1] : 똥개:워리
Dog[2] : 진도개:개똥이
Dog[3] : 푸들:발리
Dog[4] : 잡종:투덜이
*/

참고 : 소설같은 자바 ||
※ 위 내용은, 여러 자료를 참고하거나 제가 주관적으로 정리한 것입니다.
   잘못된 정보나 보완이 필요한 부분을, 댓글 또는 메일로 보내주시면 많은 도움이 되겠습니다.
02 2, 2009 13:38 02 2, 2009 13:38


Trackback URL : http://develop.sunshiny.co.kr/trackback/115

Leave a comment

« Previous : 1 : ... 564 : 565 : 566 : 567 : 568 : 569 : 570 : 571 : 572 : ... 648 : Next »

Recent Posts

  1. HDFS - Python Encoding 오류 처리
  2. HP - Vertica ROS Container 관련 오류...
  3. HDFS - Hive 실행시 System Time 오류
  4. HP - Vertica 사용자 쿼리 이력 테이블...
  5. Client에서 HDFS 환경의 데이터 처리시...

Recent Comments

  1. I enjoy what you guys are up too.... 밤의전쟁풀싸롱 06 25,
  2. 안녕하세요^^ 배그핵
  3. 안녕하세요^^ 도움이 되셨다니, 저... sunshiny
  4. 정말 큰 도움이 되었습니다.. 감사합... 사랑은
  5. 네, 안녕하세요. 댓글 남겨 주셔서... sunshiny

Recent Trackbacks

  1. wordpress seo wordpress seo 25 06
  2. traffic accidents attorneys traffic accidents attorneys 25 06
  3. auto wreck lawyer auto wreck lawyer 25 06
  4. best auto accident lawyer best auto accident lawyer 25 06
  5. outdoor clocks for hospitals outdoor clocks for hospitals 25 06

Calendar

«   06 2019   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            

Bookmarks

  1. 위키피디아
  2. MysqlKorea
  3. 오라클 클럽
  4. API - Java
  5. Apache Hadoop API
  6. Apache Software Foundation
  7. HDFS 생태계 솔루션
  8. DNSBL - Spam Database Lookup
  9. Ready System
  10. Solaris Freeware
  11. Linux-Site
  12. 윈디하나의 솔라나라

Site Stats

TOTAL 2593322 HIT
TODAY 89 HIT
YESTERDAY 1343 HIT