一 ListIterator迭代器的概述
ListIterator与Iterator接口不同,它不仅可以向后迭代,它还可以向前迭代。
ListIterator相对Iterator增加了如下3个方法:
boolean hasPrevious():返回该迭代器关联的集合是否还有上一个元素。
Object previous():返回该迭代器的上一个元素。
void add():在指定位置插入一个元素。
二 ListIterator迭代器的应用
1 代码示例
import java.util.*; public class ListIteratorTest { public static void main(String[] args) { String[] books = { "十万个为什么", "photoshop完全自学教程", "教你如何炒股" }; List bookList = new ArrayList(); for (int i = 0; i < books.length ; i++ ) { bookList.add(books[i]); } ListIterator lit = bookList.listIterator(); while (lit.hasNext()) { System.out.println(lit.next()); lit.add("++++++++++分隔符++++++++++"); } System.out.println("=======下面开始反向迭代======="); while(lit.hasPrevious()) { System.out.println(lit.previous()); } } }
2 运行结果
十万个为什么
photoshop完全自学教程
教你如何炒股
=======下面开始反向迭代=======
++++++++++分隔符++++++++++
教你如何炒股
++++++++++分隔符++++++++++
photoshop完全自学教程
++++++++++分隔符++++++++++
十万个为什么
3 代码说明
该代码先通过hasNext正向迭代集合,然后使用hasPrevious反向迭代集合,其中还用到add方法向集合中添加元素。