Iterator和ListIterator主要区别有:
一、ListIterator有add()方法,可以向List中添加对象,而Iterator不能
二、两者都有hasNext()和next()方法,可以实现顺序向后遍历。ListIterator有hasPrevious和previous()方法,可以实现逆向(向前)遍历Iterator不行
三、ListIterator可以定位当前索引位置,nextIndex()和previousIndex()可以实现,iterator没有此功能
四、都可实现删除对象,但是ListIterator可以实现对象的修改,set()方法可以实现
功能相差这么大的原因主要是listIterator是针对list的遍历对象较为确定,而iterator是使用与所有集合类型对象的遍历方式,使用对象差异性大,类的共性必定小的多
向前遍历的代码如下:
List<String> list = new LinkedList<String>();
ListIterator<String> listite = list.listiterator();
for(String str;listite.hasPrevious();)
{
System.out.println(listite.previous().toString()+"");
}