如果需要在遍历集合的过程中,动态改变集合中的元素,尤其是添加元素,必须使用ListIterator进行迭代。
普通的Iterator迭代器不能在迭代过程中,向集合加入元素,将发生异常。
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
//如果需要在迭代过程中对集合进行Add操作,使用ListIterator,它只对List集合有效
ListIterator<String> iter = list.listIterator();
while(iter.hasNext()) {
String s = iter.next();
if(s.equals("1"))
iter.remove();
else if(s.equals("2"))
iter.set("222");
else
iter.add("000");
}
System.out.println(list);
}