HashMap遍历以及遍历顺序[通俗易懂]

HashMap遍历以及遍历顺序[通俗易懂]HashMap遍历以及遍历顺序HashMap是Java语言中一种键值对(key-value)数据结构,但不记录key的插入顺序,如果要按照插入顺序进行遍历,则需要使用LinkedHashMap类型。本文将介绍下HashMap的三种遍历方式,LinkedHashMap遍历方式相同!(在leetcode12.整数转罗马数字题目中使用到HashMap遍历,遂做此记录!)HashMap结构定义如下:Map<Integer,String>map=newHashMap<Inte


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

HashMap遍历以及遍历顺序

HashMap是Java语言中一种键值对(key-value)数据结构,但不记录key的插入顺序,如果要按照插入顺序进行遍历,则需要使用LinkedHashMap类型。
本文将介绍下HashMap的三种遍历方式,LinkedHashMap遍历方式相同!

(在leetcode12. 整数转罗马数字题目中使用到HashMap遍历,遂做此记录!)

HashMap结构定义如下:

Map<Integer, String> map = new HashMap<Integer, String>(){ 
   
    // 以匿名函数方式进行初始化
    { 
   
        put("M",1000);
        put("D",500);
        put("C",100);
        put("L",50);
        put("X",10);
        put("V",5);
        put("I",1);
    }
};

因为HashMap结构在存储key值时是无序的,所以遍历结果不会与代码put顺序一致!!!

1、map.entrySet()遍历key-value

for (Map.Entry<String, Integer> entry : map.entrySet()){ 
   
    System.out.println(entry.getKey());
}

// 输出结果为
C
D
V
X
I
L
M

2、map.keySet()仅遍历键

for(String key : map.keySet()){ 
   
    System.out.println(key);
}

// 遍历结果为
C
D
V
X
I
L
M

3、map.values()仅遍历值

for (Integer value : map.values()){ 
   
    System.out.println(value);
}

// 遍历结果为
100
500
5
10
1
50
1000

如果需要按照插入key值的顺序遍历,则需要使用LinkedHashMap结构!!!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195548.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 计算机考研各省份学校,想考研究生,哪个省份的高校更容易考上?

    计算机考研各省份学校,想考研究生,哪个省份的高校更容易考上?广东省2020年报考人数为17.4万,比去年增长24.3%。考研人数在过去的5年里飞速增长,自2015年的5.16万到2020年的17.4万,五年时间里翻了两倍多,涨幅在国内名列前茅。山东省2020年硕士研究生招生考试准考人数共313190人,比去年增加58704人,增幅为23.1%,同样每年新增几万的考研人。江苏省2020年共有24.9万名考生报名参加硕士研究生考试,比去年增长17.7%,再创历…

    2022年5月22日
  • 分布式全局唯一ID生成器(支持多种注册中心)的实现

    分布式全局唯一ID生成器(支持多种注册中心)的实现在订单、支付的业务场景中,单号的生成规则与生成方式十分重要,实现有很多种,最简单的是基于mysql自增主键实现,方案优劣不多说,大家都清楚。我们今天实现一种分布式的、可扩展的并且在高并发场景能保证高性能的全局唯一ID生成方案(基于twitter的snowflake原理进行改编和扩展)。不多说直接上代码。packagecom.zxm.adapter;importorg.apache.z…

    2022年6月21日
  • currentstyle 织梦_织梦channel标签currentstyle样式无效不起作用

    currentstyle 织梦_织梦channel标签currentstyle样式无效不起作用我们在用织梦系统制作网站时,经常会用到channel标签来调子栏目。但是,很多朋友会遇到这种情况在使用channel标签来调子栏目的时候,指定“type=sontypeid=x”发现currentstyle无效。今天笔者就跟大家分享一下解决方法。1、解决channel标签currentstyle样式无效不起作用的错误方法代码如下:{dede:type=’son’typeid=’12’c…

    2022年7月14日
  • Idea 2021年激活码刚出(最新序列号破解)

    Idea 2021年激活码刚出(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
  • c++实现个人通讯录

    c++实现个人通讯录

    2021年10月2日
  • mysql autoconf_autoconf手册(一)

    mysql autoconf_autoconf手册(一)AutoconfCreatingAutomaticConfigurationScriptsEdition2.13,forAutoconfversion2.13December1998byDavidMacKenzieandBenElliston—————————————————————–…

    2022年6月4日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号