반응형
1. 정의
- Iterator 인터페이스를 구현한 객체, Iterator( ) 메소드를 호출하면 얻을 수 있음
- 모든 컬렉션클래스의 데이터를 읽을 때 사용
2. Iterator 사용법
- Iterator 타입의 변수 생성, 컬렉션에 iteraotr 메소드를 값으로 넣음 (컬렉션 변수를 iteraotr값으로 변환)
3. Iterator 메소드
* Iterator메소드 호출 순서 : hasNext() > next() > remove()
(1) hasNext()
- 다음 데이터가 있는지 확인
- boolean 값으로 반환
(2) next()
- 컬렉션에서 하나의 객체를 가져옴
- 다음 데이터(object) 반환
(3) remove()
- next 메소드가 호출한 데이터를 삭제
- 반환값 없음(void)
3. 예시
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | Set <String> set = ...; Iterator<String> iterator = set.iterator( ); set.add("홍길동"); set.add("김철수"); // 1. Set 컬렉션에서 String 객체들을 반복해서 하나씩 가져오는 코드 // 저장된 객체 수만큼 반복 while(iterator.hasNext()) { String str = iterator.next(); } // 향상된 for문, 저장된 객체 수만큼 반복 for(String str : set) { } // 2. Iterator의 next() 메소드로 가져온 객체 제거 : remove() 메소드 호출 while(iterator.hasNext()){ String str = iterator.next(); if(str.equals("홍길동")) { // iterator의 메소드지만 실제 Set컬렉션에서 객체가 제거됨 iterator.remove(); } } |
'프로그래밍 > Java' 카테고리의 다른 글
[JAVA 이론] Map Collection (0) | 2018.11.18 |
---|---|
[JAVA 이론] Set Collection (0) | 2018.11.15 |
[JAVA 이론] List Collection (0) | 2018.11.13 |
[JAVA 이론] 컬렉션 프레임워크(Collection Framework) (0) | 2018.11.12 |
[JAVA 코드] 문장 > 단어 (0) | 2018.10.31 |
댓글