Programming/Java
[Java] Iterator, ListIterator, Enumeration 반복자
kmindev
2023. 11. 3. 15:18
남궁성님의 Java의 정석(3rd Edition)을 보고 정리한 글입니다.
1. Iterator, ListIterator, Enumeration
- 모두 Collection에 저장된 데이터를 접근하는데 사용되는 인터페이스
- Enumeration은 Iterator의 구버젼(호환성 때문에 남아있을 뿐 잘 사용하지 않음)
- ListIterator는 Iterator의 접근성을 향상시킨 것(단방향 → 양방향)
a. Iterator
public class Main {
public static void main(String[] args) {
ArrayList list = new ArrayList();
for(int i=0; i<5; i++) {
list.add(i);
}
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
System.out.print(iterator.next() + " ");
}
}
}
실행결과
0 1 2 3 4
b. ListIterator
public class Main {
public static void main(String[] args) {
ArrayList list = new ArrayList();
for(int i=0; i<5; i++) {
list.add(i);
}
ListIterator listIterator = list.listIterator();
while (listIterator.hasNext()) {
System.out.print(listIterator.next() + " ");
}
System.out.println();
while (listIterator.hasPrevious()) {
System.out.print(listIterator.previous() + " ");
}
}
}
실행결과
0 1 2 3 4
4 3 2 1 0