Iterator迭代器的概述

Iterator接口也是java集合中的一员 但他与Collection、map接口有所不同 所属与java.util包下

Collection接口与Map接口主要用于存储元素而Iterator主要用于迭代访问(即遍历)Colection中的元素 因此Iterator对象也称为迭代器

要想遍历Collection集合 那么就要获取该集合迭代器的迭代操作 方法如下:

public Iterator iterator();获取集合对应的迭代器 用来遍历集合中的元素

迭代

即Collection集合元素的通用获取方式 在取元素之前先要判断集合中是否有元素,如果有就把这个元素取出来 继续判断 如果害有就再取出出来 一直把集合中的所有元素全部取出 这种取出方式专业术语称为迭代

iterator迭代器的使用

Iterator迭代器,是一个接口,我们无法直接使用 需要使用Iterator接口的实现类对象,获取实现类的方式比较特殊Collection接口中有一个方法,叫iterator(),这个方法返回的就是迭代器的实现类对象

Iterator<E> iterator() 返回在此collection的元素上进行迭代器

使用步骤:

1.使用集合中的方法iterator()获取迭代器的实现类对象 使用Iterator接口接收(多态)

2.使用Iterator接口中的方法hasNext判断还有没有下一个元素

3.使用Iterator接口中的方法next取出集合中的下一个元素

代码:

public static void main(String[] args) {
//创建一个集合对象
Collection<String> list = new ArrayList<>();

list.add("张三");
list.add("李四");
list.add("王五");
list.add("赵六");

Iterator<String> iterator = list.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
}

注意:Iterator<E>接口也是有泛型的 迭代器的泛型跟着集合做 集合是什么泛型 迭代器就是什么迭代器

迭代器的实现原理

原文地址:http://www.cnblogs.com/shenziyi/p/16798025.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性