晕,就这么一段代码,看不出来,HashSet hs=new HashSet();是什么意思嘛,你自己又没说清楚HashSet 是什么类!

解决方案 »

  1.   

    hs.iterator().hasNext()

    hs.iterator().next()
    用的是一个迭代吗?
      

  2.   

    public class hs { public static void main(String[] args) {
    String s="";
    Date d=new Date();
    String [] str={"1001","1002","1004","1003"};
    HashSet hs=new HashSet();
    for(int i=0;i<str.length;i++){
    hs.add(str[i]);
    }
                       iterator it=hs.iterator();
    while(it.hasNext()){
    s+=it.next();
    System.out.println(s);
    }
    }
    }
      

  3.   

    while(hs.iterator().hasNext()) 我觉得错在这一行。
    因为每次while的时候它都新建一个hs的循环器。
    所以他每次都有一个hasNext,即是你说的2004
    如果先把他Iterator i = hs.iterator();的话。那就只有一个循环器了!
    而不是每次while的时候都重新生成一个!