Iterator对象称为迭代器(设计模式的一种),主要用于遍历 Collection 集合中的元素。Collection接口继承了java.lang.Iterable接口,该接口有一个iterator()方法,那么所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个实现了Iterator接口的对象。

Iterator 仅用于遍历集合,Iterator 本身并不提供承装对象的能力。如果需要创建
Iterator 对象,则必须有一个被迭代的集合。
集合对象每次调用iterator()方法都得到一个全新的迭代器对象,默认游标都在集合
的第一个元素之前。


在调用it.next()方法之前必须要调用it.hasNext()进行检测。若不调用,且下一条记录无效,直接调用it.next()会抛出NoSuchElementException异常。

因此,通常集合遍历的方法如下:

Iterator iter = coll.iterator(); //每当collection.iterator()都生成返回一个新的迭代器对象,即游标在最开头
while(iter.hasNext()){Object obj = iter.next();if(obj.equals(要去除的元素)){iter.remove();}
}

Iterator可以删除集合的元素,但是是遍历过程中通过迭代器对象的remove方法,不是集合对象的remove方法。


Java 5.0 提供了 foreach 循环迭代访问 Collection和数组

遍历操作不需获取Collection或数组的长度,无需使用索引访问元素

遍历集合的底层调用Iterator完成操作

//又新建了一个集合,而不是原来的集合,里面的具体操作操作的是新的集合
for(集合内元素类型 局部变量名 : 要进行遍历操作的集合){//具体操作
}
//又新建了一个数组,而不是原来的集合,里面的具体操作操作的是新的数组
for(数组内元素类型 局部变量名 : 要进行遍历操作的数组){//具体操作
}

Java集合(3)--Iterator迭代器相关推荐

  1. jav核心(十四):集合类型操作:Collection、List、Set;Map集合;Iterator迭代器

    一.java.util.List 1.List总结 List中允许保存重复的数据: List中允许保存多个null: 常用实现类:ArrayList[推荐使用].Vector.LinkedList: ...

  2. Java中的Iterator(迭代器)

    Java中的Iterator(迭代器) 1 概述 ​ Java Iterator不是一个集合,是一种用于访问集合的方法,可用于迭代ArrayList和HashSet等集合.Iterator是Java迭 ...

  3. JAVA day15 Collection(集合)、Iterator迭代器、泛型<E>

    1.Collection(集合) 集合:集合是java中提供的⼀种容器,可以⽤来存储多个数据. 集合与数组的区别: 数组的长度是固定的,集合的长度是可变的. 数组中存储的是同⼀类型的元素,可以存储基本 ...

  4. Java基础知识(二)(Object类的常用方法、日期时间类、System类、StringBuilder类、包装类、Collection集合、Iterator迭代器、泛型、list集Set接口...)

    文章目录 Java基础知识(二) 1.Object类的常用方法 1.1 toString方法 1.2 equals方法 1.3 Objects类 2.日期时间类 2.1 Date类 2.2 DateF ...

  5. 【java笔记】Iterator迭代器 增强for

    Iterator接口: 接口java.util.Iterator遍历集合中的所有元素.Iterator对象主要用于遍历Collection中的元素,因此Iterator对象也被称为迭代器 迭代: Co ...

  6. JavaSE入门学习38:Java集合框架之迭代器

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

  7. Java设计模式 (1) —— Iterator迭代器模式

    拿到这个话题,首先搞清楚:什么是迭代器? 大家都学过 for-i 循环,for-i循环的本质就是 通过i++ 或者 i-- ,以实现 从数据的一端 一个一个地遍历数据元素,直到另一端的最后一个元素,将 ...

  8. java 集合框架、迭代器、比较器 学习笔记

    java集合框架总览 接口.实现类.算法的定义 常见的集合接口 Set和List的区别 常见的集合实现类 java.util包中定义的实现类 集合算法的概念 Collection Algorithms ...

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

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

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

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

最新文章

  1. Discuz!常用函数解析(续)
  2. java -version cmd_java如何运行步骤cmd?Java执行cmd命令方法有哪些?
  3. Python3入门笔记(1) —— windows安装与运行
  4. 少儿编程python线上课程-少儿编程课堂|python – 用游戏学编程
  5. docker安装elasticsearch2.4.4
  6. java 进程 cpu占用_JAVA进程CPU占用高的故障排查 – 运维那些事
  7. 9月11号华为发布鸿蒙2.0和EMUI 11,来看看鸿蒙最牛逼的地方
  8. 大数据和人工智能将成消费金融主要驱动力
  9. 基于CSS+dIV的网页层,点击后隐藏或显示
  10. idea mvn命令
  11. 2021年度国内网络安全事件总结
  12. 【游记】CQOI2021
  13. rstudio文件保存_R 和 RStudio 的安装及 R Profile 的配置 amp; 初识 R 语言数据爬取
  14. maven install 提示:Process terminated
  15. 域 用户和计算机名,域环境中计算机名称解析
  16. [转] ThreeJS中,那些会让阴影失效的操作
  17. 白领的一天 场景7:薪水与福利
  18. Altera Scatter-Gather DMA (SG-DMA)的简单使用
  19. chapter8——消抖技术
  20. 《深入理解计算机系统》(CSAPP)实验七 —— Malloc Lab

热门文章

  1. Couchbase 101:从Java应用程序创建视图(MapReduce)
  2. Java EE与NoSQL的未来
  3. python支持复数以及相关的运算吗_Python: 复数的数学运算
  4. IntelliJ IDEA for Mac如何使用单元测试Junit
  5. 如何理解 inode
  6. Linux 命令之 pgrep -- 用于检索(搜索进程/查找进程)当前正在运行的进程
  7. 腾讯面试编程题python_腾讯面试官出的 2 道经典数据分析面试题
  8. 深度学习pytorch--softmax回归(一)
  9. signature=02d2eb69b4d24e2f9bb2956f66089339,Signature Balancing
  10. python find函数实现原理_非常干货:Python 探针实现原理