1.内部的方法:hasNext() 和 next()

推荐的方式:

//hasNext():判断是否还有下一个元素
while(iterator.hasNext()){
//next():①指针下移 ②将下移以后集合位置上的元素返回
System.out.println(iterator.next());
}
2.集合对象每次调用iterator()方法都得到一个全新的迭代器对象,默认游标都在集合的第一个元素之前。

注意两种错误方式:

//错误方式一:
Iterator iterator = coll.iterator();
while((iterator.next()) != null){
System.out.println(iterator.next());
}
解析:while中的iterator.next()已经返回来集合中第一个数,接着输出语句中的iterator.next()打印了集合中的第二个元素。然后又回到while中的iterator.next(),如此往复,知道遍历完毕。打印的结果都是隔一个元素打印,并且最后会报错,越界。

//错误方式二:
//集合对象每次调用iterator()方法都得到一个全新的迭代器对象,默认游标都在集合的第一个元素之前。
while (coll.iterator().hasNext()){
System.out.println(coll.iterator().next());
}
解析:每次调用iterator()方法都得到一个全新的迭代器对象,每次都是打印集合第一个元素,并且是死循环。

3.内部定义了remove(),可以在遍历的时候,删除集合中的元素。此方法不同于集合直接调用remove()

jdk 5.0 新增了foreach循环,用于遍历集合、数组
public void test1(){
Collection coll = new ArrayList();
coll.add(123);
coll.add(456);
coll.add(new Person("Jerry",20));
coll.add(new String("Tom"));
coll.add(false);

//for(集合元素的类型 局部变量 : 集合对象)
//内部仍然调用了迭代器。
for(Object obj : coll){
System.out.println(obj);
}
}

最新文章

  1. 创建一个swift项目
  2. 第十二届浙江省大学生程序设计大赛-May Day Holiday 分类: 比赛 2015-06-26 14:33 10人阅读 评论(0) 收藏
  3. 在PC端或移动端应用中接入商业QQ的方法
  4. WCF 传输和接受大数据
  5. poj 2441 Arrange the Bulls(状态压缩dp)
  6. (转)iOS7界面设计规范(9) - UI基础 - 动画
  7. 仍需"敬请期待"的微信沃卡
  8. Online Judge(OJ)搭建——1、项目介绍
  9. 尽量用pass-by-reference-to-const(const引用)替换pass-by-value(传值)
  10. 关于SELinux
  11. mysql之数据库添加索引优化查询效率
  12. C语言函数-socket
  13. 快速解决PL/SQL Developer过期问题(无需注册码等复杂操作)
  14. RabbitMQ系列(五)使用Docker部署RabbitMQ集群
  15. Trace 2018徐州icpc网络赛 (二分)(树状数组)
  16. lumion制作海上明月5.29
  17. Centos6.5下VNC Server配置
  18. [转]ASP.NET Core 十种方式扩展你的 Views
  19. Eclipse下使用Stanford CoreNLP的方法
  20. MAC OS 命令行使用详解【转】

热门文章

  1. 使用python3.7和opencv4.1来实现人脸识别和人脸特征比对以及模型训练
  2. 内存问题难定位,那是因为你没用ASAN
  3. MySQL为什么"错误"选择代价更大的索引
  4. 一步一图带你深入剖析 JDK NIO ByteBuffer 在不同字节序下的设计与实现
  5. idea+SpringBoot使用过程中的问题集合
  6. C#/VB.NET 创建PDF/UA文件
  7. silk-GUI图形界面开发一个词典
  8. mac M1通过homebrew安装python3报错Error: Command failed with exit 128: git
  9. Java数据类型扩展及面试题讲解
  10. Python自学教程12-类和对象怎么用