배열의 경우, 배열의 특정 객체를 참조하기 위해 인덱스를 이용한 참조가 바로 가능하지만 Collection은 가장 일반적인 객체의 모임이라는 의미밖에 가지고 있지 않으므로 인덱스를 가지고 원하는 객체를 찾을 수가 없다.
컬렉션 (ex. List, Set)이라면 Iterator의 인터페이스를 사용 가능하다.
표준화가 되어 있지 않으면 각각의 클래스에 접근이 힘들어지는데, 모든 컬렉션으로부터 접근 가능한 인터페이스
ArrayList<String> list = new ArrayLlist<String>();
itr = list.iterator();
처럼 뒤에 iterator()를 붙여 형을 변환한다.
boolean hasNext() (int형 : hasNextInt()) |
다음 값의 존재를 true로 리턴하고 다음 데이터가 없을 때까지 반복한다.(없을 시 false 리턴) if나 while문에서 사용한다. (ex. while(itr.hasNext()) |
Object next() |
읽어올 요소가 남아있는지 확인하고 다음 데이터를 true/false로 리턴. |
void remove() |
next()로 읽어온 요소를 삭제. next() 메소드를 호출한 다음에만 호출 가능. |
<Iterator 메소드 종류>
보통 메소드의 구현 순서는 hasNext() > next() > remove() 순이다.
'BackEnd > Java' 카테고리의 다른 글
Jsp :: jsp 페이지 구성 요소 (0) | 2016.03.03 |
---|---|
Jsp :: get vs post (0) | 2016.03.02 |
Java :: HashMap (0) | 2016.02.28 |
Java :: for문과 foreach문 (0) | 2016.02.28 |
Jsp :: 자바빈 액션태그 (0) | 2016.02.24 |