历遍还是遍历?map集合有几种遍历方式

2024-01-04 19:20:27 20

历遍还是遍历?map集合有几种遍历方式

本文目录

历遍还是遍历

遍历是计算机术语,意思是把某个数据结构(如树形结构)的节点全部走一遍。顾名思义,因为要走完全部节点,所以叫遍历。所谓遍历(Traversal),是指沿着某条搜索路线,依次对树(或图)中每个节点均做一次访问。访问结点所做的操作依赖于具体的应用问题, 具体的访问操作可能是检查节点的值、更新节点的值等。不同的遍历方式,其访问节点的顺序是不一样的。遍历是二叉树上最重要的运算之一,是二叉树上进行其它运算之基础。当然遍历的概念也适合于多元素集合的情况,如数组。树的遍历简介树的遍历是树的一种重要的运算。所谓遍历是指对树中所有结点的信息的访问,即依次对树中每个结点访问一次且仅访问一次。与那些基本上都有标准遍历方式(通常是按线性顺序)的线性数据结构(如链表、一维数组)所不同的是,树结构有多种不同的遍历方式。从二叉树的根节点出发,节点的遍历分为三个主要步骤:对当前节点进行操作(称为“访问”节点)、遍历左边子节点、遍历右边子节点。这三个步骤的先后顺序也是不同遍历方式的根本区别。扩展对比历遍万水千山的历遍是经历的意思。所以这两者有本质的区别

map集合有几种遍历方式

方法一 在for-each循环中使用entries来遍历这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。Map《Integer, Integer》 map = new HashMap《Integer, Integer》();for (Map.Entry《Integer, Integer》 entry : map.entrySet()) {System.out.println(“Key = “ + entry.getKey() + “, Value = “ + entry.getValue());}注意:for-each循环在java 5中被引入所以该方法只能应用于java 5或更高的版本中。如果你遍历的是一个空的map对象,for-each循环将抛出NullPointerException,因此在遍历前你总是应该检查空引用。方法二 在for-each循环中遍历keys或values。如果只需要map中的键或者值,你可以通过keySet或values来实现遍历,而不是用entrySet。Map《Integer, Integer》 map = new HashMap《Integer, Integer》();//遍历map中的键for (Integer key : map.keySet()) {System.out.println(“Key = “ + key);}//遍历map中的值for (Integer value : map.values()) {System.out.println(“Value = “ + value);}该方法比entrySet遍历在性能上稍好方法三使用Iterator遍历使用泛型:Map《Integer, Integer》 map = new HashMap《Integer, Integer》();Iterator《Map.Entry《Integer, Integer》》 entries = map.entrySet().iterator();while (entries.hasNext()) {Map.Entry《Integer, Integer》 entry = entries.next();System.out.println(“Key = “ + entry.getKey() + “, Value = “ + entry.getValue());}不使用泛型:Map map = new HashMap();Iterator entries = map.entrySet().iterator();while (entries.hasNext()) {Map.Entry entry = (Map.Entry) entries.next();Integer key = (Integer)entry.getKey();Integer value = (Integer)entry.getValue();System.out.println(“Key = “ + key + “, Value = “ + value);}方法四、通过键找值遍历(效率低)Map《Integer, Integer》 map = new HashMap《Integer, Integer》();for (Integer key : map.keySet()) {Integer value = map.get(key);System.out.println(“Key = “ + key + “, Value = “ + value);}总结如果仅需要键(keys)或值(values)使用方法二。如果你使用的语言版本低于java 5,或是打算在遍历时删除entries,必须使用方法三。否则使用方法一(键值都要)。

历遍还是遍历?map集合有几种遍历方式

本文编辑:admin
遍历

更多文章:


vs不能用gets函数(vs2012中如何用gets函数输入字符数组)

vs不能用gets函数(vs2012中如何用gets函数输入字符数组)

本文目录vs2012中如何用gets函数输入字符数组请问一下各位知友,我这个是什么问题啊!vs2013调试的时候那个gets就是死活出错,还有scangets在vs2020未定义vs2013里面怎么用不起gets()函数VS2015显示ge

2024年4月28日 00:10

awkward silence(awkward修饰人还是物)

awkward silence(awkward修饰人还是物)

本文目录awkward修饰人还是物awkward silence是什么意思awkward怎么读翻译成英语 有时候都有些怕和你打电话了,突然就冷场了.但又很想你.好an awkward silence ensue 请问这个词组什么意思啊,老友

2023年12月5日 01:00

怎么保存网页上的视频(如何将网页上的视频保存到电脑中)

怎么保存网页上的视频(如何将网页上的视频保存到电脑中)

本文目录如何将网页上的视频保存到电脑中如何下载网页上的视频到本地电脑上如何保存网页里面的视频短片如何把网页上的视频另存为单独的视频文件网站上的视频怎么保存到手机如何将网页上的视频保存到电脑中点击浏览器上方的【工具】选项,打开【Interne

2024年7月9日 01:23

launching翻译(launching ceremony和opening ceremony区别)

launching翻译(launching ceremony和opening ceremony区别)

这篇文章给大家聊聊关于launching翻译,以及launching ceremony和opening ceremony区别对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录launching ceremony和opening

2024年8月25日 04:25

能发敏感视频的聊天软件(用什么软件可以聊天时不忍许开视频)

能发敏感视频的聊天软件(用什么软件可以聊天时不忍许开视频)

本文目录用什么软件可以聊天时不忍许开视频什么软件可以像微信一样视频语音通话而且还有很高的私密性有没有可以加密的聊天视频软件推荐哪款私密聊天视频软件比较可靠可以视频聊天的软件,手机功能跟迅雷差不多的,可以下载一下敏感链接,视频的手机软件用什么

2024年7月19日 13:55

wxpython listbox(wxpython RadioButton 如何获取选中的值)

wxpython listbox(wxpython RadioButton 如何获取选中的值)

本篇文章给大家谈谈wxpython listbox,以及wxpython RadioButton 如何获取选中的值对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘

2024年8月21日 23:05

mvc华信app官方下载(华信教育上下载必须要登录吗)

mvc华信app官方下载(华信教育上下载必须要登录吗)

本文目录华信教育上下载必须要登录吗华为平板下载华信后登录总闪退怎么办华信教育资源网’资源下载’频道在哪华信教育上下载必须要登录吗是的。请注册华信教育资源网的会员,就可以获赠积分,都是免费注册,免费下载,然后用谷歌浏览器登陆以后就可以下载了。

2024年6月30日 17:05

cracking up(i was full for love高潮部分的歌词)

cracking up(i was full for love高潮部分的歌词)

本文目录i was full for love高潮部分的歌词BASKET CASE的歌词green day - basket case歌词i was full for love高潮部分的歌词I was full for love:do yo

2024年7月22日 08:57

idea运行struts(IDEA的Struts2配置总是失败)

idea运行struts(IDEA的Struts2配置总是失败)

各位老铁们,大家好,今天由我来为大家分享idea运行struts,以及IDEA的Struts2配置总是失败的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!本

2024年7月3日 00:05

discuz类论坛帖子下载(discuz类似的论坛)

discuz类论坛帖子下载(discuz类似的论坛)

本文目录discuz类似的论坛如何下载论坛的版块所有帖子DISCUZ怎样导出论坛里所发表的贴子求助discuz大神 解答下 发布帖子的时候下载连接问题discuz如何导出与导入帖子discuz 请教下论坛的帖子内容页面文件在ftp下是哪个D

2024年6月19日 01:17

工作流activity原理(java工作流怎么用activity)

工作流activity原理(java工作流怎么用activity)

本文目录java工作流怎么用activity工作流扭转问题工作流是什么工作流有什么用工作流和工作流引擎是什么东西activity工作流引擎数据是怎么入库的activity工作流能可视化吗工作流activity流程图 红色线条有什么意义jav

2023年12月9日 20:00

多层级ui的的开发(C#多层架构中Session应该在UI层创建还是应该在BLL层创建)

多层级ui的的开发(C#多层架构中Session应该在UI层创建还是应该在BLL层创建)

本文目录C#多层架构中Session应该在UI层创建还是应该在BLL层创建ios 开发多层uiimageview叠在一起怎么判断哪一张点击事件UI设计开发中项目的开发流程是怎样的UI设计师如何做出更高级的UI界面UI设计什么软件开发怎么样C

2024年7月18日 06:12

表格中rank函数什么意思(excel的rank函数怎么理解)

表格中rank函数什么意思(excel的rank函数怎么理解)

本文目录excel的rank函数怎么理解excel表格rank函数怎么用excel的rank函数怎么理解rank函数是排名函数。rank函数最常用的是求某一个数值在某一区域内的排名。rank函数语法形式:rank(number,ref,)函

2024年7月10日 00:38

aspire e 14(电脑型号 宏碁 Aspire E1-471G 笔记本电脑 操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 ) 处理器)

aspire e 14(电脑型号 宏碁 Aspire E1-471G 笔记本电脑 操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 ) 处理器)

本文目录电脑型号 宏碁 Aspire E1-471G 笔记本电脑 操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 ) 处理器宏基Aspire E1422g能玩魔兽世界吗宏基笔记本怎么样,宏基与华硕哪一个好as

2024年5月20日 12:30

在线文件转换器免费(2022有什么好用的免费pdf转换软件)

在线文件转换器免费(2022有什么好用的免费pdf转换软件)

这篇文章给大家聊聊关于在线文件转换器免费,以及2022有什么好用的免费pdf转换软件对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录2022有什么好用的免费pdf转换软件在线pdf转word文档——speedpdf免费的PDF

2024年8月19日 10:55

标签frameset(HTML<frameset>标签怎么用)

标签frameset(HTML<frameset>标签怎么用)

本文目录HTML标签怎么用HTML frameset标签问题HTML标签怎么用frameset 元素可定义一个框架集。它被用来组织多个窗口(框架)。每个框架存有独立的文档。在其最简单的应用中,frameset 元素仅仅会规定在框架集中存在多

2024年6月2日 12:15

unix属于应用软件吗(一道多选题 下列软件中属于应用软件的有: A.UNIX B.Word C.汇编程序 D.C语言源程序)

unix属于应用软件吗(一道多选题 下列软件中属于应用软件的有: A.UNIX B.Word C.汇编程序 D.C语言源程序)

“unix属于应用软件吗”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看unix属于应用软件吗(一道多选题 下列软件中属于应用软件的有: A.UNIX B.Word C.汇编程序 D.C语言源程序)!本文目录一道多选题 下列

2024年9月1日 15:05

sql数据库四舍五入(SQL问题,我有一列有小数点,我要想要四舍五入到整数,该怎么修改)

sql数据库四舍五入(SQL问题,我有一列有小数点,我要想要四舍五入到整数,该怎么修改)

本文目录SQL问题,我有一列有小数点,我要想要四舍五入到整数,该怎么修改sql怎样四舍五入保留小数点后1位sql查询语句查询结果是数值小数点后自动四舍五入取小数点后4位,可以怎么写SQL Server 2005的四舍五入问题SQL中deci

2024年6月29日 13:48

position(position固定搭配)

position(position固定搭配)

本文目录position固定搭配什么是PositionPosition 是什么意思如何js改变background-positionposition: relative;,单独这个有什么用div中position:relative的完整用

2024年6月28日 18:31

获取request对象(在jquery里面如何获得request对象)

获取request对象(在jquery里面如何获得request对象)

本文目录在jquery里面如何获得request对象java怎么获取request对象在spring如何获取request 对象struts2怎么获取request如何获取request的所有对象Java 怎么在一个普通类中获取到Reque

2024年7月24日 08:44

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1730
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1154
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1151
标签列表

热门搜索