강의로 돌아가기
-

Iterator 에 대해서.

import java.util.*;
public class Generic1 {

public static void main(String[] args){

Set set1 = new HashSet<>();
boolean yesorno = set1.add(dada);
set1.add(dsafd);
set1.add(dfdsa);
set1.add(dfds);

System.out.println(yesorno);
System.out.println(set1.size());

while(set1.iterator().hasNext()){
String str = set1.iterator().next();
System.out.println(str);
}

}

}

이런식으로 하면 무한으로 출력이 되는데 이건 왜 그렇가요?

Iterator iter = set1.iterator(); 의 정확한 용도가 무엇인지 이해가 안 가네요.

작성중인 코드―SetExam.java
1
2
3
4
5
6
7
8
9
10
11
12
import java.util.*;

public class SetExam{
  public static void main(String[] args){
    Set<String> set = new HashSet<String>();
    set.add("a");
    set.add("b");

    Iterator<String> iter = set.iterator();
    //iter를 이용해서 set의 내용을 출력하세요.
  }
}
1 개의 답변
정두식_

공유하면 좋을것 같아 http://hashcode.co.kr/questions/3554/java-iterator를-쓰면-무한루프에-빠집니다 에 질문을 올리고 답변을 달아 두었습니다.

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.