* 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() + " ");
}
}
|

'CONCEPT > Q' 카테고리의 다른 글
[C#] 함수, 객체지향 (0) | 2025.04.03 |
---|---|
[Q] 파일 입출력(FileReader, BufferedReader), 스트림(InputStream, OutputStream) (0) | 2025.03.27 |
[Q] Highway 101(EAI), 메시지 큐(Message Queue), 트랜잭션(Transaction), 확인 응답(Ack, Acknowledgment) (0) | 2025.03.20 |
[Q] 마크업 언어(Markup) vs 마크다운 언어(Markdown) (0) | 2025.03.03 |
[Q] Node.js와 Express의 관계 (0) | 2025.03.03 |
댓글