Java中获取几位不同的随机数

       Set<Integer> set = new HashSet<Integer>();
        Random random = new Random();
        while (set.size() < 4) {//取得4个
            set.add(random.nextInt(10));//0-9范围数据
        }
        Iterator<Integer> it = set.iterator();
        List<Object> suit=new ArrayList<Object>(); 
        String matter="";
        for(;it.hasNext();){
            // matter+=it.next().toString()+"  ";
             suit.add(it.next());//切记不能两个一起添加,这样会认为迭代2次,会报异常错误:NoSuchElementException
        }
        System.out.println(matter);//或则直接这样输出
        for(int i=0;i<suit.size();i++)
        {
        	System.out.println(suit.get(i));
        }


 

 当报错这个错误的时候,只是说里面迭代了2次,比如我这样写:

String matter=""; 
for(;it.hasNext();)
{
matter+=it.next().toString()+"   ";
suit.add(it.next());
}
这样写就一定会报下面的错误。
Exception in thread "main" java.util.NoSuchElementException
	at java.util.HashMap$HashIterator.nextEntry(Unknown Source)
	at java.util.HashMap$KeyIterator.next(Unknown Source)

你可能感兴趣的:(java,thread,exception,String,Random)