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