본문 바로가기

Java

Collection API

출처 | 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