public class Test {
public static void main(String[] args) {
ArrayList<Person> al=new ArrayList<Person>();
al.add(new Person("lili", 18));
al.add(new Person("nana", 20));
al.add(new Person("lulu", 31));
al.add(new Person("feifei", 9));
//遍历(正确方式):
Iterator<Person> it=al.iterator();
while(it.hasNext()){
Person p=it.next();
System.out.println(p.getName()+"---"+p.getAge());
}
}
}
//输出的结果:
lili---18
nana---20
lulu---31
lulu---9
报异常: Unresolved compilation problem
public static void main(String[] args) {
ArrayList<Person> al=new ArrayList<Person>();
al.add(new Person("lili", 18));
al.add(new Person("nana", 20));
al.add(new Person("lulu", 31));
al.add(new Person("feifei", 9));
//遍历(正确方式):
Iterator<Person> it=al.iterator();
while(it.hasNext()){
Person p=it.next();
System.out.println(p.getName()+"---"+p.getAge());
}
}
}
//输出的结果:
lili---18
nana---20
lulu---31
feifei---9
下边是错误方式:
//输出错误的结果:
a, 如果有偶数个对象,则:
lili---20lulu---9
原因:每一次it.next();方法指针都会下移,当第一个指向lili的时候,下个指针指向下一个的age
报异常: Unresolved compilation problem