1. Iterator 란?
iterator는 자바에서 제공하는 컬렉션 프레임워크의 요소를 순화하는 방법을 표준화한 인터페이스이다. 컬렉션에 저장된 요소에 순차적으로 접근하는데 사용되며, 인덱스를 사용하지 않고도 모든 요소를 순회할 수 있다. 이는 컬렉션에 독립적으로 동작하기 때문에, 다양한 유형의 컬렉션에 대해 동일한 방식으로 요소를 순회할 수 있다.
2. Iterator의 중요 메서드
Iterator 인터페이스는 주로 세 가지 메서드를 사용한다.
- hasNext() : 이 메서드는 컬렉션에 다음 요소가 있으면 true를 반환하고, 없으면 flase를 반환한다. 이 메서드는 보통 "next()" 메서드를 호출하기 전에 사용하여 안전하게 요소를 가져올 수 있도록 한다.
- next() : 이 메서드는 컬렉션의 다음 요소를 반환하고, 이후에 Iterator의 위치를 다음 위치로 이동시킨다. 값이 없을 때 호출하면 오류가 발생하므로, 미리 "hasNext()"로 확인하는 것이 좋다.
- remove() : 이 메서드는 Iterator가 가리키고 있는 요소를 제거한다.
3. Iterator 사용 시 주의점
Iterator를 사용하면서 가장 주의해야 할 점은 "next()" 메서드를 호출하기 전에 반드시 "hasNext()" 메서드를 사용하여 다음 요소의 존재 여부를 확인해야 한다는 점이다. 이는 "next()" 메서드가 요소가 없을 때 오류를 발생시키기 떄문에, 이런 식으로 "hasNext()"메서드를 사용하면 안전하게 컬렉션의 모든 요소를 순회할 수 있다.
4. Iterator 사용법
Iterator<String> it = list.iterator();
while(it.hasNext()) {
String str = it.next();
System.out.println(str);
}
위 코드는 Iterator를 사용하여 ArrayList의 모든 요소를 순회하고 출력하는 예제이다.
'Java > JAVA 100 문제 풀이' 카테고리의 다른 글
자바 part.5 문제풀이 - 컬렉션 프레임워크에서 ConcurrentModificationException 피하는 방법: Iterator 활용하기 (0) | 2023.08.02 |
---|---|
자바 part.5 문제풀이 - Iterator 활용한 ArrayList 요소 접근과 삭제 (0) | 2023.08.01 |
자바 part.5 문제풀이 - ArrayList를 활용한 2차원 배열 데이터 처리 (0) | 2023.08.01 |
자바 part.5 문제풀이 - ArrayList를 활용한 데이터 처리 (0) | 2023.08.01 |
자바 part.5 문제풀이 - ArrayList : 동적 데이터 구조의 이해와 활용 (0) | 2023.08.01 |