先转换为数组在遍历集合,这种方式比较麻烦,java提供了一个Iterator的接口,在集合的实现类里面都实现了这个接口
1.for循环利用迭代器遍历集合:
public static void iteratorTest02() {
Collection c = new ArrayList();
c.add(new Person("张三", 23));
c.add(new Person("李四", 24));
c.add(new Person("王五", 25));
c.add(new Person("赵六", 26));
//获取迭代器
for(Iterator iter = c.iterator(); iter.hasNext(); ){
//向下转型
Person p = (Person)iter.next();
System.out.println(p.getName() + "..." + p.getAge());
}
}
2.while循环利用迭代器遍历集合:
public static void iteratorTest01() {
Collection c = new ArrayList();
c.add(new Person("张三", 23));
c.add(new Person("李四", 24));
c.add(new Person("王五", 25));
c.add(new Person("赵六", 26));
//获取迭代器
Iterator iter = c.iterator();
while(iter.hasNext()) {
//向下转型
Person p = (Person)iter.next();
System.out.println(p.getName() + "..." + p.getAge());
}
}