迭代器(Iterator)
Iterator 类位于 java.util 包中,使用前需要导入,语法格式如下:
import java.util.Iterator; // 引入 Iterator 类
一.获取迭代器对象
提供了一种遍历集合和数组的方法,并且可以在遍历的过程中对集合或者数组进行增、删、改操作。Java Iterator(迭代器)的主要作用是:
1、遍历集合和数组
2、可以在遍历的过程中对集合或者数组进行增、删、改操作
Iterator listIter=list.iterator();
二.迭代器方法:
- 使用迭代器的 hasNext() 方法来检查是否还有下一个元素,如果迭代器中还有元素,则返回true。
- 使用 next() 方法获取下一个元素。例如:
while (listIter.hasNext()){//判断集合中是否还有数据,如果有才能继续循环
Object id=listIter.next();
System.out.println("---------->"+id);
}
- remove():删除迭代器新返回的元素。
三.迭代器的循环方式
1、where循环
代码示例:
public class Demo1{
public static void main(String[] args) {
// 创建一个集合对象
ArrayList list = new ArrayList();
list.add(1);//给集合添加数据
list.add(2);
list.add(3);
list.add(4);
list.add(5);
//调用Iterator方法(),获取一个迭代器对象
Iterator listIter=list.iterator();
//使用迭代器遍历集合
while (listIter.hasNext()){//判断集合中是否还有数据,如果有才能继续循环
Object id=listIter.next();//获取下一个元素
System.out.println("---------->"+id);
}
}
}
结果如下:
---------->1
---------->2
---------->3
---------->4
---------->5
2、for循环
public class Demo2 {
public static void main(String[] args) {
//创建一个集合对象
ArrayList list = new ArrayList();
// 增加:add() 将指定对象存储到容器中
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(5);
//循环遍历
for (Iterator it = list.iterator(); it.hasNext();) {
//迭代器的next方法返回值类型是Object,所以要记得类型转换。
String next = (String) it.next();
System.out.println("----->"+next);
}
}
}
结果如下:
----->1
----->2
----->3
----->4
----->5