【集合】Iterator和ListIterator的区别和联系
2015-02-15 23:08
281 查看
List和Set都有iterator()来取得其迭代器。对List来说,你也可以通过listIterator()取得其迭代器,两种迭代器在有些时候是不能通用的,
Iterator和ListIterator主要区别在以下方面:
1. ListIterator有add()方法,可以向List中添加对象,而Iterator不能
2. ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有hasPrevious()和previous()方法,
可以实现逆向(顺序向前)遍历。Iterator就不可以,Iterator中具备的功能只有hashNext(),next(),remove()。
3. ListIterator可以定位当前的索引位置,nextIndex()和previousIndex()可以实现。Iterator没有此功能。
4. 都可实现删除对象,但是ListIterator可以实现对象的修改,set()方法可以实现。Iierator仅能遍历,不能修改。
ListIterator中具备着对被遍历的元素进行增删改查的方法,可以对元素进行逆向遍历。
之所以如此,是因为ListIterator遍历的元素所在的容器都有索引。
5.Iterator是ListIterator的父接口。
6.Iterator是单列集合(Collection),是取出容器中元素的公共方式。
对于List,Set都通用。而ListIterator是List集合的特有取出元素方式。
Iterator和ListIterator主要区别在以下方面:
1. ListIterator有add()方法,可以向List中添加对象,而Iterator不能
2. ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有hasPrevious()和previous()方法,
可以实现逆向(顺序向前)遍历。Iterator就不可以,Iterator中具备的功能只有hashNext(),next(),remove()。
3. ListIterator可以定位当前的索引位置,nextIndex()和previousIndex()可以实现。Iterator没有此功能。
4. 都可实现删除对象,但是ListIterator可以实现对象的修改,set()方法可以实现。Iierator仅能遍历,不能修改。
ListIterator中具备着对被遍历的元素进行增删改查的方法,可以对元素进行逆向遍历。
之所以如此,是因为ListIterator遍历的元素所在的容器都有索引。
5.Iterator是ListIterator的父接口。
6.Iterator是单列集合(Collection),是取出容器中元素的公共方式。
对于List,Set都通用。而ListIterator是List集合的特有取出元素方式。
相关文章推荐
- java中Iterator和ListIterator的区别与联系
- ListIterator和Iterator的区别与联系
- 集合类 List/Set/Map的区别和联系
- ListIterator 与 Iterator 区别
- Iterator与ListIterator有什么区别?
- java的Iterator和listIterator的区别
- Java Iterator与ListIterator的区别
- 集合类的联系与区别
- Iterator与ListIterator有什么区别?
- 14、Iterator跟ListIterator的区别
- Iterator和listIterator的区别
- Iterator 和 Iterable 区别和联系
- 集合类(Collection) List/Set/Map... 的区别和联系
- Iterator 与ListIterator的区别
- Iterator和ListIterator的区别
- Iterator和ListIterator主要区别(转)
- 【C#】数组、集合、泛型集合的区别与联系
- Iterator与ListIterator有什么区别?
- for循环 增强for循环 iterator遍历集合的区别与用法
- Iterator()和listIterator()的区别及应用