출처 | http://blog.naver.com/mygpwls0904/220523284267
Collection API(Application Programming Interface)
:다수의 자료를 효과적으로 관리하기 위한 인터페이스 및 클래스들을 제공한다.
- set Interface 계열
- List Interface 계열
- Map Interface 계열
1) Set Interface 계열 : 중복을 허용하지 않는다.
- TreeSet : 정렬기능
- LinkedHashSet : 추가된 순서를 기억
2) List Interface 계열 : 요소별 인덱스로 관리
추가된 순서대로 0번째 인덱스 -> 1번째 인덱스로 관리된다.
- ArrayList : 입력된 순서대로 index 추가되어 관리 ( 0 -> 1 -> 2..)
- LinkedList : 수정, 삭제시 속도가 빠르다.
* 같은 객체가 List 안에 들어갈수 있는 이유는?
- 객체를 직접 담는 것이 아니라 주소를 참조하고 있는 것이다.
3) Map Interface 계열 : key와 value의 쌍으로 저장.
key를 통해 검색, 수정, 삭제가 용이하다.
- HashMap : 데이터가 저장되는 구조(key와 value가 1:1로 짝을 지어 저장)
HashMap에 저장된 데이터들은 순서 없이 저장이 되어있다.
- LinkedHashMap : 들어온 순서대로 값을 key값과 함께 저장한다.
** Generic
: 종을 의미, Collection계열의 List, Set, Map과 같은 객체에 요소로 관리될 데이터의 타입을 미리 지정함으로써 타입의 안정성과 캐스팅 절차를 감소 할 수 있다.
ex) ArrayList<String>
** Iterator Interface
: 사전적 의미로는 반복자(반복하여 작업을 수행)를 뜻한다. 컬렉션 계열의 Set or List or Map or key, value 들의 구성요소를 반복, 열거할 수 있는 표 준을 제시한다.
-특징
- java.util.Collection Interface의 abstract method 인 iterator()의 리턴 타입이다.
(Collection은 모든 Collection 계열 (Set or List or Map or key, value)의 최상위 인터페이스이므로 모든 컬렉션 계열의 클래스는 iterator() 메서드 를 구현하고 있다.
- Collection을 바구니로 가정한다면, TreeSet 바구니, ArrayList 바구니 등 다양한 방식의 자료를 담는 바구니에 대한 반복하여 열거할 수 있는 표준을 제시하는 역할을 한다.
-문법
- hasNext() : boolean 다음 요소가 존재하는지 true or false
- next() : Object 다음 요소를 반환
ex) Collection col = ArrayList or HashSet or TreeSet
Iterator it = col.iterator();
while(it.hashNext())
System.out.println(it.next());
'Java' 카테고리의 다른 글
Generic (0) | 2016.03.08 |
---|---|
Reflection API (0) | 2016.03.08 |
Excel download & upload (1) | 2016.03.03 |
[error] The type BASE64Decoder is not accessible due to restriction on required library (0) | 2016.01.11 |
[OAuth] 인증과 권한 개념잡기 (0) | 2015.10.30 |