迭代器ListIterator的add()方法与集合List的add()方法有什么不一样?

2025-04-16 03:14:41
推荐回答(1个)
回答(1):

效果没有区别,但使用上区别很大。
考虑在迭代中使用add()、remove()等方法
使用迭代器调用Iterator.add()、Iterator.remove()后,Iterator.next()还是指向原来的元素
而使用for(int i = 0; i< list.size(); i++)循环调用list.add(i, obj)后,下一个i指向的是新增的元素,而调用list.remove(i),则下一个i会跳过一个元素。
因此大部分迭代的情况还是优先考虑使用迭代器。