본문 바로가기

Developer/Java-oop

#020. Collection Set / List / Map 알아보자...

#020. Collection Set / List / Map 알아보자...

 

1. Collection 의 특징을 알아보자.

1. Collection 의 객체는 같은 유형의 객체를 저장할 수 있는 자료구조다.

2. 이전 강좌에서 알아본 배열로 예를 들어보면, 배열의 크기를 한번 지정하면, 더 이상 크기를 변경할 수가 없다. 그에 반면, Collection 은 자료구조의 크기를 지정하지 않고 사용을 한다.

3. 기본 자료형인 int, char, double, boolean 등 .... 은 Collection 에 넣을 수 없기 때문에 이전강좌에서 알아본 wrapper class 로 변형해서 넣어야 한다.

 

위 2번과 같은 특징 때문에 프로그램 개발할 때 배열보다는 Collection을 많이 사용한다.

 

2. Conllection 에는 추가 add(); 삭제 remove(); 조회 contains(); 추출 iterator(); 크기 size();등의 기능들이 있다.

Collection<E> 여기서 E 에는 Class 타입 (사용자 정의 class 포함) 이 들어간다.

ex) Collection<String>

 

3. 자주 사용되는 Collection 의 특징에 대해서 알아보겠다.

1. Set 객체: 중복을 허용하지 않으며, 순서가 변경될 수 있음.

순서가 보장되지 않아 거의 사용을 하지는 않는다.

대표적인 컬렉션으로 HashSet<E> 가 있다.

2. List 객체: 중복을 허용하며, 순서가 보장된다.

대표적인 컬렉션으로 ArrayList<E>, Vector<E> 가 있다.

ArrayList<E>: 가변길이 배열로 가장 많이 사용된다.

Vector<E>: 속도가 느리며, 크리티컬한 데이터를 다룰 때 사용한다.

3. Map 객체: 순서가 없고 키 와 데이터를 한번에 저장하며, 키 값은 중복될 수 없다.

대표적인 컬렉션으로 HashMap<K,V> 가 있다.

 

4. 위 Collection 은 interface Iterator 가 import 되어 있다. interface 는 전 강좌에서 알아본 것처럼 사용법의 통일화가 되겠다.

Interface Iterator {

hasNext(); // 데이타 남았는지 확인

next(); // 데이타 추출

remove() // 데이타 삭제

}

 

위 본문은 필요한 내용만 적혀 있다. 혹시라도 좀더 자세히? 알고 싶다면 아래 사이트를 참고 바란다.

( 본문과는 상관없음. http://blog.naver.com/musicnet?Redirect=Log&logNo=10032583260 )

그럼 다음 시간엔 각각의 컬렉션의 사용법에 대해서 알아보겠다.

 

잡담. 이번 시간엔 이론에 대해서 설명을 했네요..*^^* 지루하셨죠?.. 오늘도 고생하셨네요^^

블로거는 부지런 해야겠네요^^;