LANGUAGE STUDY/JAVA
[JAVA] 컬렉션 프레임웍의 핵심 인터페이스 - List, Set, Map
KUNDUZ
2020. 8. 22. 20:26
반응형
- 자바는 객체지향 언어이다. 수많은 객체를 생성하고, 이동해야 할 경우 객체들을 저장하고 관리해야 할 공간이 필요하다. Collection Framework(Collection API)는 객체들을 저장, 검색, 삭제하는 기능 등을 제공하는 클래스들의 집합이다.
- java.util.package에 정의되어 있다.
- Collection : 모든 클래스들의 Object를 요소(element)로 저장하는 객체의 최상위 interface
- Framework : 표준화, 정형화된 체계적인 프로그래밍 방식
인터페이스 | 특 징 |
List | 순서가 있는 데이터의 집합, 데이터의 중복을 허용한다. 예) 대기자 명단 |
구현클래스 : ArrayList, LinkedList, Stack, Vector 등 | |
Set | 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않는다. 예) 양의 정수집합, 소수의 집합 |
구현클래스 : HashSet, TreeSet 등 | |
Map | 키(key)와 값(value)의 쌍(pair)으로 이루어진 데이터의 집합 순서는 유지되지 않으며, 키는 중복을 허용하지 않고, 값은 중복을 허용한다. 예) 우편번호, 지역번호(전화번호) |
구현클래스 : HashMap, TreeMap, Hashtable, Properties 등 |
- 스텍(Stack) : LIFO구조. 마지막에 저장된 것을 제일 먼저 꺼내게 된다.
- 큐(Queue) : FIFO구조. 제일 먼저 저장한 것을 제일 먼저 꺼내게 된다.
Stack<String> stack = new Stack<String>(); //stack 생성
stack.push("1월");
stack.push("2월");
stack.push("3월");
System.out.println(stack.pop());// 제일 마지막에 넣었던 값을 꺼냄
System.out.println(stack.size()); //남아있는 값의 숫자
System.out.println(stack.peek());// 빼내지는 않고, top에 저장된 값을 불러줌
System.out.println(stack.size()); //남아있는 값의 숫자
System.out.println(stack.pop()); //top에 있는 값을 꺼냄
System.out.println(stack.pop()); //top에 있는 값을 꺼냄
3월
2
2월
2
2월
1월
LinkedList <String>queue=new LinkedList<>(); //LinkedList를 이용한 queue 만들기
queue.offer("1월"); //queue에 1월추가
queue.offer("2월"); //queue에 2월추가
queue.offer("3월"); //queue에 3월추가
System.out.println(queue.peek()); //queue 에서 다음에 나올 값
System.out.println(queue.poll()); //queue 에서 제일 먼저 넣었던 값을 출력
System.out.println(queue.poll()); //queue 에서 다음으로 넣었던 값을 출력
System.out.println(queue.peek()); //queue 에서 다음에 나올 값을 출력
1월
1월
2월
3월
반응형