import java.util.*;
class Test1 {
public static void main(String[] args) {
method2();
}
public static void method2() {
List l=new ArrayList();
l.add("a");
l.add("b");
l.add("c");
ListIterator lt=l.listIterator();
while(lt.hasNext()) {
Object obj=lt.next();
if(obj.equals("b")) {
lt.add("d");
lt.hasPrevious();
Object obj1=lt.previous();//得到d/b/a
//lt.set("d");
System.out.println(obj1);//a d b d c
}
System.out.println(obj);
}//System.out.println(l);
}
}
希望大家仔细看下,我在用到List集合特有迭代器ListIterator中,从头判断hasNext()方法和从后判断hasPrevious()方法混合使用.
但是输出的结果和自己过一遍得到的结果不一样,请大家分析下 -->obj1的结果是怎么回事?的到a d b d c?作者: liuyangyang 时间: 2013-4-15 21:32
你好,
previous
E previous()返回列表中的前一个元素。可以重复调用此方法来迭代列表,或混合调用 next 来前后移动(注意交替调用 next 和 previous 将重复返回相同的元素)。