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

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

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

    SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解固态硬盘概念固态驱动器(SolidStateDrive),俗称固态硬盘,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,因为台湾英语里把固体电容称之为Solid而得名。SSD由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。被广泛应用于军事、车载、工控、视频监控、网络监控、网…

    2022年4月28日
    51
  • Java语言中一个字符占几个字节?「建议收藏」

    Java语言中一个字符占几个字节?「建议收藏」要区分清楚内码(internalencoding)和外码(externalencoding)就好了。内码是程序内部使用的字符编码,特别是某种语言实现其char或String类型在内存里用的内部编码;外码是程序与外部交互时外部使用的字符编码。“外部”相对“内部”而言;不是char或String在内存里用的内部编码的地方都可以认为是“外部”。例如,外部可以是序列化之后的char或String…

    2022年6月26日
    28
  • Apache配置虚拟主机

    Apache配置虚拟主机

    2021年9月20日
    55
  • HTML设置图片为页面背景

    HTML设置图片为页面背景HTML设置图片为页面背景:问题:在HTML页面中不使用CSS盒模型的前提下如何将一张图片设置为页面背景?方法:在<body>中使用background以及style来设置例:在这里我把html格式的文件和jpg格式的图片文件都放到了桌面上<html><head> <metacontent=”text/html”charset=”UTF-8″> <title>HTML设置图片为页面背景</

    2022年4月30日
    62
  • Oracle数据库增删改查

    Oracle数据库增删改查1、查询SELECT由于之前安装的oracle数据库中选择了生成示例方案,oracle默认提供了三张数据表,分别是(emp,dept,salgrade)此时数据显得很乱,我们可以通过设置显示的宽度以及每页显示的数据SETLINESIZE300;SETPAGESIZE30;emp表dept表salgrade表在编写SQL语句的时候需注意一个规则:关键字使用大写字母,…

    2022年6月22日
    36

发表回复

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

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