package com.yjf.esupplier.common.test; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.ListIterator; /** * @author shusheng * @description * @Email shusheng@yiji.com * @date 2018/12/12 13:45 */ public class ListIteratorDemo { /** * 列表迭代器: * ListIterator listIterator():List集合特有的迭代器。 * 该迭代器继承了Iterator迭代器,所以就可以直接使用hasNext()和next()方法 特有功能: * Object previous():获取上一个元素 * boolean hasPrevious():判断是否有元素 * 注意:ListIterator可以实现逆向遍历,但是必须先正向遍历,所以一般不适用。 */ public static void main(String[] args) { List list = new ArrayList(); list.add("hello"); list.add("world"); list.add("java"); ListIterator lit = list.listIterator(); while (lit.hasNext()) { String s = (String) lit.next(); System.out.println(s); } System.out.println("------------------------"); while (lit.hasPrevious()) { String s = (String) lit.previous(); System.out.println(s); } System.out.println("------------------------"); ListIterator lit2 = list.listIterator(); while (lit2.hasPrevious()) { String s = (String) lit2.previous(); System.out.println(s); } System.out.println("------------------------"); Iterator it = list.iterator(); while (it.hasNext()) { String s = (String) it.next(); System.out.println(s); } } }