Iterator 和 ListIterator 有什么区别?
- ListIterator 继承 Iterator
- ListIterator 比 Iterator多方法
add(E e) 将指定的元素插入列表,插入位置为迭代器当前位置之前
set(E e) 迭代器返回的最后一个元素替换参数e
hasPrevious() 迭代器当前位置,反向遍历集合是否含有元素
previous() 迭代器当前位置,反向遍历集合,下一个元素
previousIndex() 迭代器当前位置,反向遍历集合,返回下一个元素的下标
nextIndex() 迭代器当前位置,返回下一个元素的下标
- 使用范围不同,Iterator可以迭代所有集合;ListIterator 只能用于List及其子类
- ListIterator 有 add 方法,可以向 List 中添加对象;Iterator 不能
- ListIterator 有 hasPrevious() 和 previous() 方法,可以实现逆向遍历;Iterator不可以
- ListIterator 有 nextIndex() 和previousIndex() 方法,可定位当前索引的位置;Iterator不可以
- ListIterator 有 set()方法,可以实现对 List 的修改;Iterator 仅能遍历,不能修改
【Java面试题与答案】整理推荐

本文主要探讨了Iterator和ListIterator的区别。ListIterator继承自Iterator,比其多了add、set等方法。使用范围上,Iterator可迭代所有集合,ListIterator只能用于List及其子类。此外,ListIterator能逆向遍历、定位索引位置和修改List,而Iterator仅能遍历。
3504

被折叠的 条评论
为什么被折叠?



