`
webcode
  • 浏览: 5931235 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Java 基础之Iterator(迭代器) 的用法

 
阅读更多

Java学习之Iterator(迭代器)的一般用法 (转)

迭代器(Iterator)

  迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。

  Java中的Iterator功能比较简单,并且只能单向移动:

  (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

  (2) 使用next()获得序列中的下一个元素。

  (3) 使用hasNext()检查序列中是否还有元素。

  (4) 使用remove()将迭代器新返回的元素删除。

  Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。

迭代器应用:
list l = new ArrayList();
l.add("aa");
l.add("bb");
l.add("cc");
for (Iterator iter = l.iterator(); iter.hasNext();) {
String str = (String)iter.next();
System.out.println(str);
}
/*迭代器用于while循环
Iterator iter = l.iterator();
while(iter.hasNext()){
String str = (String) iter.next();
System.out.println(str);
}
*/

分享到:
评论

相关推荐

    Java学习之Iterator(迭代器)的一般用法

    Java学习之Iterator(迭代器)的一般用法

    Java使用Iterator迭代器遍历集合数据的方法小结

    主要介绍了Java使用Iterator迭代器遍历集合数据的方法,结合实例形式分析了java迭代器进行集合数据遍历的常见操作技巧,需要的朋友可以参考下

    详解Java中Iterator迭代器的用法

    主要介绍了Java中Iterator迭代器的用法,比较简单易懂,非常不错,具有参考借鉴价值,需要的朋友可以参考下

    java迭代器

    文章目录java迭代器Iterator 迭代器接口迭代器的方法:next():返回迭代中的下一个元素。hasNext():如果迭代具有更多元素,则返回true。remove():从基础集合中移除迭代器返回的最后一个元素。使用foreach 循环遍历...

    Iterator迭代器的简单介绍与使用

    Iterator接口也是Java集合中的一员,但它与Collection、Map接口有所不同,Collection接口与Map接口主要用于存储元素,而Iterator主要用于迭代访问(即遍历)Collection中的元素,因此Iterator对象也被称为迭代器。...

    基于列表实现的元素迭代器算法(java算法源码)

    * 基于列表实现的元素迭代器 */ package dsa; public class IteratorElement implements Iterator { private List list;//列表 private Position nextPosition;//当前(下一个)元素的位置 //默认构造方法 ...

    Java基础知识点总结.docx

    迭代器模式 222 中介者模式 224 备忘录模式 226 观察者模式 230 状态模式 233 空对象模式 236 策略模式★★★★★ 238 模板模式 240 访问者模式 244 设计模式总结★★★★★ 247 二十二、 Java其他总结 248 Java JVM...

    ES6 迭代器(Iterator)和 for.of循环使用方法学习(总结)

    Iterator可以使我们不需要初始化集合,以及索引的变量,而是使用迭代器对象的 next 方法,返回集合的下一项的值,偏向程序化。 迭代器是带有特殊接口的对象。含有一个next()方法,调用返回一个包含两个属性的对象,...

    设计模式(十七)——迭代器模式(Iterator Pattern)

    如果我们的集合元素是用不同的方式实现的,有数组,还有 java 的集合类,或者还有其他方式,当客户端要遍历这些集合元素的时候就要使用多种遍历方式,而且还会暴露元素的内部结构,可以考虑使用迭代器模式解决。...

    concat-iterator:将项目从迭代器连接到数组

    将项目从迭代器串联到数组中。 用法 const concat = require ( 'level-concat-iterator' ) const level = require ( 'level' ) const db = level ( './db' ) db . put ( 'foo' , 'bar' , function ( err ) { if ( ...

    五分钟带你搞懂python 迭代器与生成器

    前言 大家周末好,今天给大家...我们先从迭代器开始入手,迭代器并不是Python独有的概念,在C++和Java当中都有iterator的概念,两者的使用也都差不多。迭代器主要解决了一个问题,在一个复杂场景下,获取数据怎么尽可

    java技术文档 常用类和经典应用

    迭代器Iterator的用法.pdf 反射机制.pdf 访问路经问题.pdf 基于MVC和RMI的分布.pdf 经典的查询方式.pdf 经典的显示方法.pdf 面向对象的实现.pdf 日期及其格式化.pdf 数字的格式化.pdf 网页之间共享数据.pdf 异常处理...

    java中set、list和map的使用方法实例

    // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器(container)对象中的各个元素, // 而又不需暴露该对象的内部细节。 // 学习set对象容器的使用 // set容器...

    think in java线程和容器2

    java线程中容器使用技术,比如List接口是在Collection的基础上添加了大量方法,有两种...为了遍历,JAVA定义了迭代器Iterator,它只能向后遍历,它有一个子类ListIterator,它只适用于List类的访问,它还可以双向移动。

    Java中的List集合

    通过集合对象获取对应的Iterator迭代器  Iterator iterator(); 常用方法:  boolean hasNext();  判断当前Iterator是否可以继续运行。  E next();  获取Iterator当前指向元素,并且指向下一个元素。  void ...

    ArrayList.java

    此类的返回的迭代器 iterator和listIterator方法是快速失败的 :如果列表在任何时间从结构上修改创建迭代器之后,以任何方式,除了通过迭代器自身的remove或add方法,迭代器都将抛出ConcurrentModificationException...

    java设计模式教程+源代码

    Iterator ( 迭代器模式 ) Mediator ( 中介者模式 ) Memento ( 备忘录模式 ) Observer ( 观察者模式 ) State ( 状态模式 ) Strategy ( 策略模式 ) TemplateMethod ( 模板方法 ) Visitor ( 访问者模式 )

    java初学者必看

    15.2.2 迭代器(Iterator) 15.3 链表List 15.3.1 链表List接口方法 15.3.2 链表迭代器接口 15.3.3 链表和数组链表 15.3.4 链表应用 15.3.5 数组链表应用 15.4 集Set 15.4.1 排序集接口 15.4.2 哈希集和树集 ...

    Java双列集合HashMap

     1、使用Iterator迭代器缺点:  1. ListIterator有add()方法,可以向List中添加对象,而Iterator不能  2. ListIterator和Iterator都有hasNext()和next()方法,可以实现顺序向后遍历,但是ListIterator有...

    蓝桥杯leetcode-JavaBase:Java一些类测试用例

    迭代器的用法 5. KeyWord volatiled和atomic 6. List ArrayList和LinkedList的区别和删除时注意的点 7. Proxy 静态代理和动态代理 8. Reflection java 反射 9. Sort 多种排序方法 10. Sync synchronized 和 lock 的...

Global site tag (gtag.js) - Google Analytics