일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- oracle
- 오라클
- 이클립스 알고리즘 세팅
- 백준 1000번 c++
- 백준 10951번
- 배열 복사
- 백준 10950번 java
- nodejs
- 이클립스 알고리즘 환경
- 백준 1000번 c
- 백준 10950번
- RETURN ROW IF NO DATA FOUND
- 백준 알고리즘
- 백준 1000번 java
- 백준 10951번 c++
- 2020 펭수 달력
- 티스토리 초대장
- 포항 지진
- 백준 10951번 java
- 백준10950번 c++
- Eclipse Althrithm
- JavaScript
- 지진
- 백준 10950번 c
- 펭수 2020 달력
- 티스토리 초대장 이벤트
- 백준 10951번 c
- 자바스크립트
- 펭수 달력
- 백준 1000번
- Today
- Total
스노우보드 참 좋아하는데 맨날 키보드 앞에만 있네
Java의 컬렉션 프레임워크(Collection Framework) 본문
자바의 컬렉션 프레임워크란?
자바의 컬렉션 프레임워크(Collection Framework)는 다수의 데이터를 처리하기 위한 표준화된 방법을 제공하는 클래스의 집합을 말한다.
즉, 데이터를 저장하는 자료구조와 처리하는 알고리즘을 구조화하여 클래스로 구현한 것이다.
다른말로 컨테이너(Container)라고도 부르며, 자바의 인터페이스(Interface)를 사용하여 구현할 수 있다.
컬렉션 프레임워크의 인터페이스
컨렉션 프레임워크의 인터페이스는 크게 Collection과 Map으로 구성된다.
Collection의 하위 인터페이스로 Set, List, Queue가 있다.
Collection
1. Set : HashSet, LinkedHashSet, TreeSet
2. List : ArrayList, Vector, LinkedList
3. Queue : PriorityQueue, LinkedList
Map
Map은 Key와 Value의 쌍으로 값을 저장하는 컬렉션이다.
SortedMap, TreeMap, Hashtable, LinkedHashMap, HashMap 이 있다.
개인적으로 유용하게 사용하는 몇 가지를 아래에 정리하였다.
ArrayList
ArrayList는 동적으로 크기가 조절되는 배열이다. 새 원소를 삽입할때, 크기가 늘어난다.
1 2 3 4 5 6 7 | public static void main(String[] args){ ArrayList myArr = new ArrayList(); myArr.add("one"); myArr.add("two"); System.out.println(myArr.get(0)); } |
Vector
Vector는 ArrayList와 비슷하지만 동기화(synchronize)되어 있다는 차이가 있다.
1 2 3 4 5 6 7 | public static void main(String[] args){ Vector myVect = new Vector(); myVect.add("one"); myVect.add("two"); System.out.println(myVect.get(0)); } |
LinkedList
자바에서 제공하는 LinkedList 클래스이다.
순환자(iterator)의 사용법을 잘 알아두자.
iterator는 인터페이스 Collection에 정의되어 있기때문에 Collection을 구현하는 모든 컬렉션 프레임워크는 iterator 메서드를 사용할 수 있다.
iterator를 이용하면 for 문을 이용하는 것처럼 데이터에 순차적으로 접근할 수 있다.
1 2 3 4 5 6 7 8 9 10 | public static void main(String[] args){ LinkedList myLinkedList = new LinkedList(); myLinkedList.add("two"); myLinkedList.addFirst("one"); Iterator iter = myLinkedList.iterator(); // hasNext() : 반복할 데이터가 더 있으면 true, 없으면 false를 반환 while(iter.hasNext()){ // next() : 다음 데이터를 반환 System.out.println(iter.next()); } } |
HashMap
HashMap은 Map인터페이스를 사용하여 구현한다. 해싱(hashing) 검색 방법을 사용하여 많은 양의 데이터를 검색할 때 성능이 뛰어나다.
1 2 3 4 5 6 7 | public static void main(String[] args){ HashMap map = new HashMap(); map.put("one", "uno"); map.put("two", "dos"); System.out.println(map.get("one")); } |
'개발 > Java, SpringFramework' 카테고리의 다른 글
web.xml 파일과 배포서술자(Deployment Descritor) (0) | 2018.07.18 |
---|---|
메서드 시그니처(Method signature) (0) | 2018.05.21 |
오버로딩 vs 오버라이딩 (0) | 2018.05.21 |
UTF-8 설정하기(부제 : 한글깨짐현상 해결) (0) | 2017.12.12 |
transactionaleventlistenerfactory not found 이슈 (0) | 2017.12.11 |