Iterator란 우리가 흔히 사용하는 그룹 데이터들(Set, List, Map)을 읽어오는 데 도움을 줄 수 있다.
그러면 사용법을 한 번 알아보도록 하자.
Iterator 없이는 다음과 같이 코드를 짜고 읽어와야 한다.
ArrayList list = new ArrayList<>();
list.add(1);
list.add(5);
list.add(9);
for(int i = 0; i < list.size(); i ++){
if((int)list.get(i) >= 5){
System.out.println("5보다 크거나 같습니다.");
}else{
System.out.println("5보다 작습니다.");
}
}
5보다 작습니다.
5보다 크거나 같습니다.
5보다 크거나 같습니다.
라는 결과를 얻을 수 있다.
그렇다면 Iterator는 어떻게 사용하는지 알아보자.
Iterator를 사용하면 다음과 같이 코드를 짤 수 있다.
ArrayList list = new ArrayList<>();
list.add(1);
list.add(5);
list.add(9);
Iterator<Integer> iter = list.iterator();
while(iter.hasNext()){
if(iter.next() >= 5){
System.out.println("5보다 크거나 같습니다.");
}else{
System.out.println("5보다 작습니다.");
}
}
이 코드도 같은 결과를 얻을 수 있다.
Iterator의 메소드에는 hasNext(), next(), remove() 가 존재한다.
hasNext()는 읽어오려는 그룹데이터의 다음 값이 남아있느냐를 판단한다.
next()는 읽어오려는 그룹데이터의 다음 값이다.
remove()는 읽어오려는 그룹데이터의 요소를 삭제한다.
Iterator를 사용하면 나중에 그룹데이터의 종류를 정하지 못했을 때도 일관성있게 처리 할 수 있기에 코드를 짜기 간편해진다.
알아두면 유용하게 쓸 수 있을 것 같다.
'언어 > Java' 카테고리의 다른 글
[Java] 클래스, 객체, 인스턴스 (0) | 2022.03.20 |
---|---|
[Java] static 변수 (0) | 2022.03.19 |
[Java] Math 클래스 (0) | 2022.03.19 |
[Java] 문자열 자르기, 길이 알아보기 (0) | 2022.03.19 |
[Java] ArrayList의 Sort (0) | 2022.03.19 |