1. Iterator
- 컬렉션 프레임웍에서는 컬렉션에 저장된 요소들을 읽어오는 방법을 표준화하였다. 그것은
바로 각 요소에 접근할 수 있느 기능을 가진 Iterator 인터페이스이다.
- Collection 인터페이스에 정의된 메서드이므로, List와 Set에도 Iterator가 포함되어 있다.
- 메서드 종류는 아래와 같다.
(1) bollean hasNext()
(2) Object next()
(3) void remove()
: next()로 읽어야만 remove()를 사용할 수 있다..
- Map 인터페이스를 구현한 컬렉션 클래스는 키와 값을 iterator()로 불러올 수 없지만,
따로 키값을 가져오는 keySet()이나 entrySet()을 불러와야 한다.
1-1. Iterator를 이해하기 위한 예제(1)
: next() 이후 remove() 하는 예제이다.
1-2. Iterator를 이해하기 위한 예제(2)
: Iterator가 실제 구현되어 있는 메서드(iterator(), hasNext(), next(), remove())를 확인하는 예제이다.
( 컴파일 에러는 따로 하나의 클래스를 만들어서 상속 받은 후, 정의하면 된다. )
2. ListIterator
- Iterator를 상속받아서 기능을 추가한 것으로, 단방향만 접근하는 것이 ListIterator에서는 양방향으로
접근할 수 있다.
- 추가된 메서드는 아래와 같다.
(1) boolean hasPrevious()
(2) Object previous()
(3) int nextIndex()
(4) int previousIndex()
3. Enumeration
- Iterator의 구버전인데, 가능하면 호환성을 위해 Iterator를 쓰는 것을 권장한다.
'자바 > 컬렉션 프레임워크' 카테고리의 다른 글
(7) Comparator와 Comparable (0) | 2022.01.17 |
---|---|
(6) Arrays (0) | 2022.01.17 |
(4) Stack과 Queue (0) | 2022.01.13 |
(3) LinkedList (0) | 2022.01.12 |
(2) ArrayList (0) | 2022.01.10 |