자바의 컬렉션 프레임워크에서 컬렉션에 저장된 요소들을 읽어오는 방법을 표준화 한 것
Collection
인터페이스에서는 Iterator
인터페이스를 구현한 클래스의 인스턴스를 반환하는 iterator()
메소드를 정의하여 각 요소에 접근하도록 함Collection
인터페이스를 상속받는 List
, Set
인터페이스에서도 iterator()
사용 가능메소드 | 설명 | 비고 |
---|---|---|
boolean hasNext() | 해당 이터레이션(iteration)이 다음 요소를 가지고 있으면 true를 반환하고, 더 이상 다음 요소를 가지고 있지 않으면 false를 반환 | |
E next() | 이터레이션(iteration)의 다음 요소를 반환 | |
default void remove() | 해당 반복자로 반환되는 마지막 요소를 현재 컬렉션에서 제거 | 선택적 기능 |
자바에서는 JDK 1.5부터 추가된 Enhanced for 문 사용하도록 권장
특징
Iterator
와 같은 성능 유지비교
for(초기값; 조건식; 증감식) {..}
for(초기화 : 배열) {..}
예시
int[] arr = new int[] {1,2,3,4,5};
int sum = 0;
for(int n : arr) {
sum += n;
}
💡 주의
요소의 선택적 제거나 대체 등을 수행하기 위한 경우, 반복자(
iterator
) 사용 필요
📖 참고