标签:
特有的方法:
hasPrevious() 判断是否存在上一个元素。
previous() 当前指针先向上移动一个单位,然后再取出当前指针指向的元素。
next(); 先取出当前指针指向的元素,然后指针向下移动一个单位。
add(E e) 把当前有元素插入到当前指针指向的位置上。
set(E e) 替换迭代器最后一次返回的元素。
public static void main(String[] args) { List list = new ArrayList(); list.add("铁蛋"); list.add("三胖子"); list.add("狗剩"); list.add("Tom"); System.out.println(list); ListIterator it = list.listIterator();//返回的是List 接口特有的迭代器 System.out.println("有上一个元素: " + it.hasPrevious());//F //System.out.println("获取上一个元素: " + it.previous());//出现异常 it.next(); System.out.println("获取上一个元素: " + it.previous());//刚开始时是指向,集合中的第一个元素,next之后,指针指向集合中的第二个元素然后取出 /*while (it.hasNext()) { it.next(); it.previous(); }//这是个死循环,来来回回就*//*只在那一个地方*/ System.out.println(); while(it.hasNext()){ System.out.println(it.next()); } System.out.println(); while (it.hasPrevious()){ System.out.println("元素是: " + it.previous()); } System.out.println(); System.out.println(list); it.next(); it.next();//指针动了两次 it.add("Jack"); System.out.println(list);//是list,不是输出it System.out.println(); it.next(); it.next(); it.set("MMMMMMMMM");//替换迭 代器最后一次返回 的元素。所以 没有迭代器最后一次的返回是不行的 (这里的it.next()就是最后一次的返回) System.out.println(list);//然后抛出java.lang.IllegalStateException } }
[铁蛋, 三胖子, 狗剩, Tom] 有上一个元素: false 获取上一个元素: 铁蛋 铁蛋 三胖子 狗剩 Tom 元素是: Tom 元素是: 狗剩 元素是: 三胖子 元素是: 铁蛋 [铁蛋, 三胖子, 狗剩, Tom] [铁蛋, 三胖子, Jack, 狗剩, Tom] [铁蛋, 三胖子, Jack, 狗剩, MMMMMMMMM] Process finished with exit code 0
标签:
原文地址:http://www.cnblogs.com/lifehrx/p/5793245.html