List集合的迭代神器ListIterator

一 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方法向集合中添加元素。

猜你喜欢

转载自cakin24.iteye.com/blog/2323800