TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
可迭代是java集合框架下的所有集合类的一种共性,也就是把集合中的所有的元素遍历一遍。迭代的过程需要依赖一个迭代器对象,那么什么是迭代器呢?它应该如何使用呢? 迭代器(Iterator)模式,又叫游标(Cursor)模式,它的含义是,提供一种方法访问一个容器对象中各个元素,而又不需要暴露该对象的内部细节。 简单的说,迭代器就是一个接口(Iterator),实现了该接口的类就叫做可迭代类,这些类多数时候指的就是java.util包下的集合类。以下是一段使用迭代器遍历List元素的示例:- import java.util.ArrayList;
- import java.util.Iterator;
- import java.util.List;
- public class IteratorTest {
- public static void main(String args[]){
- List
-
- list=new ArrayList
-
- ();//创建保存字符串的List对象;
- list.add("a"); //放入元素a
- list.add("b"); //放入元素b
- Iterator
-
- it=list.iterator(); //得到list的迭代器
-
- //调用迭代器的hasNext()方法,判断是否有下一个元素
- while(it.hasNext()){
- //迭代器的下标移动一位,并得到当前位置的元素
- System.out.println(it.next());
- }
- }
- }
- 在迭代器Iterator接口中,有以下三个方法:
- (1) hasNext():该方法用于判断集合对象是否还有下一个元素,如果已经是最后一个元素则返回false;
- (2) next():把迭代器的指向移动到下一个位置,同时,该方法返回下一个元素的引用。
- (3) remove():从迭代器指向的Collecion中移除迭代器返回的最后一个元素,该操作使用的较少。
-
- 总结:迭代器,提供一种访问一个集合对象中各个元素的途径,同时又不需要暴露该对象的内部细节。
- Java通过提供Iterable和Iterator两个接口实现集合集类的可迭代性。迭代器主要的用法就是,
- 首先用hasNext()作为循环条件;再用next()方法得到每一个元素;最后进行相关的操作。
-
-
-
复制代码 |
|