迭代器的使用
迭代器:
用于遍历实现collection接口的子类集合中的元素的一种方式
- iterator对象称为迭代器,主要用于遍历collection集合中的元素
- 只要实现的collection接口的集合类都会有iterator()方法,用于返回一个I实现Iterator接口的对象,也就是返回了一个迭代器
- Iterator只用来遍历集合中的元素,本身不存储元素。
迭代器的使用原理
1、 得到一个集合的迭代器
Iterator iterator = collection.iterator();
2、判断集合中是否还有下一个元素
hasNext();
while(iterator.hasNext()){
遍历过程
}
3、指针下移返回元素
next();
Object object = iterator.next();
*****返回的是一个个的对象
4、打印输出
System.out.println(“集合数据为:”+ object);`
Collection collection= new ArrayList();
collection.add(new Book("java","X",99));
collection.add(new Book("c++","Y",99));
collection.add(new Book("c","z",99));
//现在需要遍历这个collection集合
Iterator iterator = collection.iterator();
while(iterator.hasNext()){
Object object = iterator.next();
System.out.println("集合数据为:"+ object);
}
//使用迭代器实现遍历的快捷键 --->itit回车
//查看快捷键的快捷键为 Ctrl + j//
/* while (iterator.hasNext()) {
Object next = iterator.next();
}*/
迭代器使用的细节
- 每次while循环结束之后,迭代器就会指向集合中最后的一个元素,如果继续使用该迭代器就会报出NoSuchElementException异常
- 希望再次遍历,我们需要重置迭代器: Iterator iterator = collection.iterator();