본문 바로가기
IT/java

자바 이터레이터(Iterator): 컬렉션의 요소를 순회하며 접근하기 위한 인터페이스

by 뉴코딩맨 2023. 6. 9.
자바에서 Iterator는 컬렉션(Collection)의 요소에 접근하고 순회하기 위한 인터페이스입니다. Iterator를 사용하면 컬렉션의 내부 구조에 상관없이 요소에 순차적으로 접근할 수 있습니다. 자바에서는 java.util 패키지에서 Iterator 인터페이스를 제공하며, 이를 구현한 컬렉션 클래스들은 Iterator를 통해 요소를 순회할 수 있습니다.
 
 

Iterator 인터페이스 메서드

Iterator 인터페이스는 다음과 같은 메서드를 제공합니다.
  • boolean hasNext(): 순회할 다음 요소가 있는지 확인합니다.
  • E next(): 다음 요소를 반환합니다.
  • void remove(): 현재 순회 중인 요소를 삭제합니다. (선택적인 기능)

 

 

ArrayList에서 Iterator 사용하기

다음은 ArrayList에서 Iterator를 사용하여 요소를 순회하는 예시입니다.
 
List<String> fruits = new ArrayList<>();
fruits.add("사과");
fruits.add("바나나");
fruits.add("딸기");

Iterator<String> iterator = fruits.iterator();
while (iterator.hasNext()) {
    String fruit = iterator.next();
    System.out.println(fruit);
}
 
위의 예시에서는 ArrayList에 "사과", "바나나", "딸기"라는 세 개의 요소를 추가하고, iterator() 메서드를 통해 Iterator 객체를 얻습니다. 그리고 hasNext() 메서드를 사용하여 다음 요소의 존재 여부를 확인하고, next() 메서드를 사용하여 다음 요소를 가져옵니다. 순회하면서 각 요소를 출력합니다.
 
 

Iterator의 장점

  • 내부 구조에 상관없이 컬렉션의 요소에 접근할 수 있습니다.
  • 요소의 추가, 수정, 삭제 등의 작업을 안전하게 수행할 수 있습니다.
  • 컬렉션의 크기와 상관없이 메모리를 효율적으로 사용할 수 있습니다.
Iterator를 사용하면 컬렉션의 요소를 효과적으로 처리하고 다양한 작업을 수행할 수 있습니다. Iterator를 활용하여 자바의 다양한 컬렉션 클래스를 유연하게 다루어보세요.
 

댓글