0%

Iterator

Iterator,ListIterator,Enumeration

  • 컬렉션에 저장된 데이터를 접근하는데 사용되는 인터페이스
  • Enumeration은 Iterator의 구버전
  • 컬렉션에 iterator()를 호출해서 Iterator를 구현한 객체를 얻어서 사용
메서드 설명
boolean hasNext() 읽어 올 요소가 남아있는지 확인.있으면 true, 없으면 false를 반환
Object next() 다음 요소를 읽어옴. next()를 호출하기전에 hasNext()를 호출해서 읽어 올 요소가 있는지 확인하는 것이 안전
boolean hasMoreElements() 읽어 올 요소가 남아있는지 확인.있으면 true,없으면 false를 반환
Object nextElement() 다음 요소를 읽어옴.nextElement()를 호출하기전에 hasMoreElements()를 호출해서 읽어올 요소가 남아있는지 확인하는 것이 안전함.Iterator의 next()와 같음
1
List list = new ArrayList();
2
Iterator it = list.iterator();
3
4
while(it.hasNext()) {
5
  System.out.println(it.next());
6
}

image

  • Map에는 iterator()가 없기때문에 keySet(), entrySet(), values()를 호출해야함
1
Map map = HashMap();
2
	...
3
Iterator it = map.entrySet().iterator();