티스토리 뷰

[주제]

- 배열 리스트와 연결 리스트의 사용 방식



[중요]

- 배열 리스트는 'ArrayList'를, 연결 리스트는 'LinkedList'를 사용하면 손쉽게 구현 가능

- 제너릭이 사용되었기 때문에 클래스 옆에 사용되는 자료형 기입 필요

  ※ 소스에서는 'ArrayList'의 경우 '<Integer>'로 사용, 'LinkedList'는 '<String>'으로 사용

  ※ 자료형은 클래스 이름으로 작성해야 함



[소스]

import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
 
public class mainClass {
    public static void main(String[] args) {
/*
 * 배열 리스트        
 */
        ArrayList<Integer> arrlist = new ArrayList<Integer>();
        
        ///// 추가(Insert)
        Integer inte = new Integer(2);
        
        arrlist.add(inte);
        arrlist.add(new Integer(4));
        arrlist.add(new Integer(16));
        arrlist.add(new Integer(32));
        arrlist.add(new Integer(60));
        
        arrlist.add(128);
        arrlist.add(200);
        arrlist.add(256);
        
        // 지정된 배열 위치에 데이터 추가
        arrlist.add(28);        // '배열 [2]' 위치에 '8' 데이터 추가
        
        
        ///// 검색(Select)
        int r;
        
        r = arrlist.indexOf(32);
//      System.out.println("검색: 데이터 \'32\'가 들어간 배열 위치는 " + r + "입니다.");
//      밑에 리스트 다음에 출력
        
        ///// 수정(Update)
        // 지정된 배열 위치의 데이터를 수정
        arrlist.set(564);        // '배열 [5]' 위치의 데이터를 '64'로 수정
        
        
        ///// 삭제(Delete)
        // 지정된 배열 위치의 데이터를 삭제
        arrlist.remove(7);        // '배열 [7' 위치의 데이터를 삭제
        
        
        ///// 출력(Print)
        // 배열 크기 구하기: '.size()'
        // 인덱스 값 구하기: '.get(인덱스)'
        System.out.println("[배열 리스트]");
        for (int i = 0; i < arrlist.size(); i++) {
            System.out.println("arrlist[" + i + "] = " + arrlist.get(i));
        }
        System.out.println("검색: 데이터 \'32\'가 들어간 배열 위치는 [" + r + "]입니다.");
        System.out.println();
        
/*
 * 연결 리스트        
 */
        LinkedList<String> llist = new LinkedList<String>();
        
        ///// 추가(Insert)
        String str = "우아아앙";
        
        llist.add(str);
        llist.add("요오요요요오");
        llist.add("ㅋㅋㅋㅋㅋㅋ");
        
        // 지정된 배열 위치에 데이터 추가
        llist.add(2"ㅎㅎㅎㅎㅎㅎ");
        
        
        ///// 검색(Select)
        int s;
        
        s = llist.indexOf("우아아앙");
        
        
        ///// 수정(Update)
        // 지정된 배열 위치의 데이터를 수정
        llist.set(2"ㅌㅌㅌㅌㅌ(구)ㅎㅎㅎㅎㅎㅎ");
        
        
        ///// 삭제(Delete)
        // 지정된 배열 위치의 데이터를 삭제
        llist.remove(1);
        
        
        ///// 출력(Print)
        System.out.println("[연결 리스트]");
        for (int i = 0; i < llist.size(); i++) {
            System.out.println("llist[" + i + "] = " + llist.get(i));
        }
        System.out.println("검색: 데이터 \'우아아앙\'이 들어간 배열 위치는 [" + s + "]입니다.");
        
        
        ///// 리스트에 저장된 데이터를 출력하는 다른 방법  ※ 예시는 위의 연결 리스트를 출력
        Iterator<String> it = llist.iterator();        // Iterator: 반복자
        
        while (it.hasNext()) {
            System.out.println(it.next());
        }
    }
}
cs



■ 실행결과



[첨부 파일]

mainClass.java


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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 31
글 보관함