Iterator
: iterator로 접근 --> 나중에 자료구조를 바꾸기 쉽도록 표준화된 방법인 iterator를 사용.
내부적 구조가 다름에도 불구하고 데이터 전체를 가져와야 할 일이 있는데, 그 때 접근방식을 동일하게 함으로써 자료구조의 교체를 용이하게 한다.
package ex05.collections.iterator07;
import java.util.ArrayList;
import java.util.Iterator;
public class IteratorEx {
public static void main(String[] args) {
ArrayList<String> arrList = new ArrayList<String>();
arrList.add("홍길동");
arrList.add("임꺽정");
arrList.add("장길산");
arrList.add("일지매");
arrList.add("차돌바위");
Iterator<String> itr = arrList.iterator();
while(itr.hasNext())
System.out.println(itr.next());
}
}
내용을 입력하세요.
set은 순서가 없으니가 바껴 출력될수 있음. (set은 검색을 빠르기위해 내부에서 재정렬하니까)
package ex05.collections.iterator08;
import java.util.HashSet;
import java.util.Iterator;
public class IteratorEx {
public static <T> void showAllData(Iterator<T> itr) {
while(itr.hasNext())
System.out.println(itr.next());
System.out.println();
}
public static void main(String[] args) {
//LinkedList<String> datas = new LinkedList<String>();
HashSet<String> datas = new HashSet<String>();
datas.add("홍길동");
datas.add("임꺽정");
datas.add("장길산");
datas.add("일지매");
datas.add("차돌바위");
showAllData(datas.iterator());
}
}