JAVA

JAVA Map 컬렉션, Set 컬렉션, Iterator

Adev 2023. 1. 6. 17:54

Collection Framework

: 객체를 수집해서 저장하는 역할을 한다.
컬렉션 사용법을 정의한 인터페이스들을 통해 다양한 컬렉션 클래스를 이용할 수 있다.

 

 

 

1. Map 컬렉션

 

대표 구현 클래스 HashMap

Map<K, V> map = new HashMap<K, v>();

 

put(K key, V value)

: 키와 값 추가

 

get(Object key)

: 해당 키의 값 리턴

 

 

 


2. Set 컬렉션

: like 집합, 주머니

: List와 달리 저장 순서가 유지되지 않고 중복해서 저장할 수 없다.

 

 

Iterator(반복자)

: 자바 컬렉션 프레임워크(Java Collection Framework)에 포함되는 클래스와 인터페이스(List, Set, Map 등)를 순회하며 저장된 요소를 읽어오는 인터페이스이다. 

 

Iterator<E> iterator() 

: 순서가 없기때문에 인덱스로 특정 객체 하나만 가져올 수 없고, 전체 객체를 순차적으로 하나씩 반복해서 가져오는 반복자(iterator).

 

- boolean hasNext() : 다음에 올 요소가 있는지 확인한다.

- E next() : object를 리턴하며 다음 요소의 값을 가져온다.

object를 리턴하기 때문에 제너릭타입을 지정하거나 강제형변환(cast)이 필요하다. 

- void remove()

 

ex)

Set<String> set = ...;

Iterator<String> iterator = set.iterator();

while(iterator.hasNext()) {

String str = iterator.next();

}

 

ex)

Set<String> set = ...;

for(String str : set) {

}


ex) 

List<FileItem> items = upload.parseRequest(request);
AddRequest addRequest = new AddRequest();
Iterator<FileItem> iter = items.iterator(); 
while (iter.hasNext()) { 
FileItem item = iter.next();

 

 

HashSet 

Set<E> set = new HashSet<E>();

 

 


참고 : JSP 2.1 웹프로그래밍, 이것이 자바다