列表迭代器:
ListIterator listIterator():List集合特有的迭代器
该迭代器继承了Iterator迭代器,所以,就可以直接使用hasNext()和next()方法。
特有功能:
A: boolean hasPrevious():判断是否有元素
B:Object previous():获取上一个元素
注意:ListIterator可以实现逆向遍历,但是必须先正向遍历,才能逆向遍历,所以一般无意义,不使用。
1 import java.util.ArrayList; 2 import java.util.Iterator; 3 import java.util.List; 4 import java.util.ListIterator; 5 public class ListIteratorDemo { 6 public static void main(String[] args) { 7 // 创建List集合对象 8 List list = new ArrayList(); 9 list.add("hello"); 10 list.add("world"); 11 list.add("java"); 12 13 // ListIterator listIterator() 14 ListIterator lit = list.listIterator(); // 子类对象 15 // while (lit.hasNext()) { 16 // String s = (String) lit.next(); 17 // System.out.println(s); 18 // } 19 // System.out.println("-----------------"); 20 21 // System.out.println(lit.previous()); 22 // System.out.println(lit.previous()); 23 // System.out.println(lit.previous()); 24 // NoSuchElementException 25 // System.out.println(lit.previous()); 26 27 while (lit.hasPrevious()) { 28 String s = (String) lit.previous(); 29 System.out.println(s); 30 } 31 System.out.println("-----------------"); 32 33 // 迭代器 34 Iterator it = list.iterator(); 35 while (it.hasNext()) { 36 String s = (String) it.next(); 37 System.out.println(s); 38 } 39 System.out.println("-----------------"); 40 41 } 42 }