본문 바로가기
CONCEPT/Q

[Q] Collection과 Iterator의 관계

by 1005 2025. 3. 27.

* Iterator 

이터레이터는 java.util.Iterator 인터페이스로, 컬렉션(List, Set 등)의 요소를 순회할 때 사용됨.

 

* Collection

✅ 컬렉션은 데이터를 저장하고 관리하는 자바의 프레임워크!
✅ 모든 컬렉션은 iterator() 메서드를 가지고 있어서, Iterator 객체를 얻을 수 있음.

 

ex) 우리가 책을 보관하는 책장(collection)이 있고,

       그곳에는 책(컬렉션 안에 들어갈 객체)가 있습니다.

       이 책장은 도서관 사서(iterator)가 관리합니다.

 

트리 구조

 

 

 

- Iterator<E>는 제네릭 인터페이스이므로, <E> 부분에 String, Integer 같은 타입을 넣어서 사용함.
- ArrayList, HashSet 같은 컬렉션에서 요소를 하나씩 순회(iterate)할 때 사용함.
 ➡  Iterator는 인터페이스이기 때문에 직접 객체를 만들 수 없고, 

       ArrayList.iterator() 같은 메서드를 통해 구현체를 얻어야 함.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.util.*;
 
public class test {
    public static void main(String[] args) {
        
        //컬렉션 생성
        ArrayList<String> list = new ArrayList<String>();
 
        list.add("A");
        list.add("B");
        list.add("C");
        list.add("D");
        list.add("E");
        
        //Iterator 인터페이스에 대한 객체 iterator 생성
        Iterator<String> iterator = list.iterator();
 
        System.out.print("List elements: ");
        
        while(iterator.hasNext()) //
            System.out.print(iterator.next() + " ");
    }
}

 

댓글