1.集合的迭代
private void randomRemoveSet(Set<Integer> set){
int size = set.size();
int randomIndex = RandomUtil.oneToN(size) - 1;
int counter = 0;
Iterator<Integer> it = set.iterator();
while(it.hasNext()){
//调用Iterator的remove时,必须要先做next()操作,否则报错:java.lang.IlleagalStateException
it.next();
if(randomIndex == counter){
it.remove();
break;
}
counter ++;
}
}
代码表示从Set集合中随机删除一个元素,在调用iterator的remove前,一定要先调用next方法。