前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >【Java】迭代器(Iterator)与增强for循环(forEach)

【Java】迭代器(Iterator)与增强for循环(forEach)

作者头像
CODER-V
发布于 2023-03-04 05:45:23
发布于 2023-03-04 05:45:23
55100
代码可运行
举报
文章被收录于专栏:藏经阁藏经阁
运行总次数:0
代码可运行

1. 迭代器(Iterator)

迭代器的作用

用来遍历集合

迭代器实现遍历

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Iterator itr = 集合.iterator();

while(itr.hasNext()){

	/**
	* next():
	*	①指针下移1位,next指针初始状态没有指向任何元素,第一次调用next()方法时,指向第一位元素
	*	②将下移后指针指向的元素返回
	*/
	System.out.println(itr.next());
}

2. 增强for循环(forEach)

作用

用来遍历数组、集合

forEach实现遍历

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// 将要变量的集合或数组的每一项依次取出来,赋值给新的临时变量
for(要遍历的集合或数组元素的类型 临时变量 :要遍历的集合或数组){
	// 临时变量就是变量出来的集合或数组的每一项
	// 对临时变量的操作...
}

说明

  • 针对于集合来讲,forEach底层任然使用的时迭代器
  • forEach执行过程:将集合或数组中的元素依次取出来赋值给临时变量。
  • 注意:循环体中对临时变量的修改,可能不会导致原有集合或数组中元素的修改。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-03-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
java 1.5中for循环的新写法
J2SE 1.5提供了另一种形式的for循环。借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象。本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类,并解释和这一机制的一些常见问题。
用户7886150
2020/12/03
1.1K0
迭代器和foreach原理。
迭代器是一种设计模式,它的定义为:提供一种方法访问一个容器对象中的各个元素,而又不需暴露该容器对象的内部细节。迭代器模式,就是为容器而生。
崔笑颜
2020/07/23
8430
迭代器模式
---- 还是老样子,无需求,不设计。更好的设计只是为了解决需求而诞生 有这样的一个需求: 需要写一个程序,展示学校院系结构,。并且要在要在一个页面展示出学校院系的组成,一个学校有多少个学院,一个学院
@派大星
2023/06/28
1340
迭代器模式
小白学Java:迭代器原来是这么回事
迭代器这个词,在没查找许多资料之前,我只知道个大概,我知道它可以用来遍历集合,但是至于它其中的奥妙,并没有做深究。本篇文章关于Iterator迭代器做了小小的总结,巩固学习,如果有理解错误,或叙述不当之处,还望大家评论区批评指针。
后端码匠
2020/02/14
7810
小白学Java:迭代器原来是这么回事
Java学习之迭代器
迭代器 Demo001---------阿里云基础P184 迭代器Enumeration和Iterator的区别 1、函数接口不同 Enumeration只有两个函数接口。通过Enumeration,我们只能读取集合的数据,而不能对数据进行修改 Iterator只有三个函数接口。Iterator除了能读取集合的数据之外,也能对数据进行删除操作 2、Iterator支持fail-fast机制,而Enumeration不支持 Enumeration是Java1.0之后
用户8447427
2022/08/18
2670
Java的Iterator迭代器类
迭代对于我们搞 Java 的来说绝对不陌生。我们常常使用 JDK 提供的迭代接口进行 Java 集合的迭代。
JavaEdge
2021/02/22
4680
迭代器模式--沙场秋点兵
小帅在军中官至军师,身居高位,必然要尽心尽责,最近又要主动进行士兵普查,遂命各副将按各个兵种准备士兵名册。
zhanyd
2022/05/16
2820
迭代器模式--沙场秋点兵
Java集合(二) Collection父接口
1,Collection 是所有单列集合的父接口,因此在Collection中定义了单列集合( List 和 Set )通用的一些方法, 这些方法可以用于操作所有的单列集合。
宇宙无敌暴龙战士之心悦大王
2022/01/10
5810
STL开发之迭代器(Iterator)
C++在操作容器时更加推荐使用迭代器进行操作,C++标准库为每一种标准容器都定义了一种迭代器类型同时也支持了对部分容器使用下标进行访问。
CPP开发前沿
2021/11/25
7790
基于源码去理解Iterator迭代器的Fail-Fast与Fail-Safe机制
在Java编程当中,Iterator迭代器是一种用于遍历如List、Set、Map等集合的工具。这类集合部分存在线程安全的问题,例如ArrayList,若在多线程环境下,迭代遍历过程中存在其他线程对这类集合进行修改的话,就可能导致不一致或者修改异常问题,因此,针对这种情况,迭代器提供了两种处理策略:Fail-Fast(快速失败)和Fail-Safe(安全失败)。
朱季谦
2023/12/28
3330
基于源码去理解Iterator迭代器的Fail-Fast与Fail-Safe机制
JDK1.9-Iterator迭代器
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
cwl_java
2019/12/03
3000
java基础第十二篇之集合、增强for循环、迭代器和泛型
public static void main(String[] args) { // TODO Auto-generated method stub //遍历数组 // int[] nums = {1,2,3,4,5}; // for(int num:nums){ // System.out.println(num); // } Collection nums = new ArrayList(); nums.add(10); nums.add(20); nums.add(30); nums.add(40); //1.用迭代器 //2.增强for循环 for(Integer i:nums){ nums.add(50); System.out.println(i); } //快捷键 foreach+alt+/
海仔
2019/08/05
4950
for 、foreach 、iterator 三种遍历方式的比较
for、foreach循环、iterator迭代器都是我们常用的一种遍历方式,你可以用它来遍历任何东西:包括数组、集合等
cxuan
2019/06/03
2K0
Java 迭代器Iterator的详解
为了方便的处理集合中的元素,Java中出现了一个对象,该对象提供了一些方法专门处理集合中的元素.例如删除和获取集合中的元素.该对象就叫做迭代器(Iterator).
用户7886150
2021/04/23
6760
Iterator迭代器解决[为何禁止在foreach内增删]?
1、对集合进行增加删除,禁止使用foreach,循环的动态操作 2、倒序遍历 3、遍历循环
崔笑颜
2020/06/08
7770
Java Iterator(迭代器)小笔记
Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList和 HashSet 等集合。Iterator 是 Java 迭代器最简单的实现,ListIterator 是 Collection API 中的接口, 它扩展了 Iterator 接口。
joshua317
2022/03/29
5810
Java Iterator(迭代器)小笔记
Java中普通for循环和增强for循环的一些区别
对于实现了RandomAccess接口的集合类,推荐使用普通for,这种方式faster than Iterator.next
XING辋
2019/03/26
1.6K0
Java for循环的几种用法
J2SE 1.5提供了另一种形式的for循环。借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象。本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类,并解释和这一机制的一些常见问题。
allsmallpig
2021/02/25
9750
Java之集合的遍历与迭代器
集合的遍历 依次获取集合中的每一个元素 将集合转换成数组,遍历数组 //取出所有的学号, 迭代之后显示学号为1004-1009 Object[] c=map.keySet().toArray();//取出学号转换为数组 System.out.println(c); for (int i = 0; i < c.length; i++) { int n=(int)c[i];//数组向下转型 if(n>=1004&
二十三年蝉
2018/02/28
9760
java for 的用法总结
J2SE 1.5提供了另一种形式的for循环。借助这种形式的for循环,可以用更简单地方式来遍历数组和Collection等类型的对象。本文介绍使用这种循环的具体方式,说明如何自行定义能被这样遍历的类,并解释和这一机制的一些常见问题。
全栈程序员站长
2021/12/27
2910
相关推荐
java 1.5中for循环的新写法
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文