HashMap的四种遍历方式_hashmap循环-程序员宅基地

技术标签: java  Java基础  

第一种方式:采用for循环遍历key,然后根据key从HashMap中获取值

代码如下

    @Test
    void mapTraversal1() {
    
        HashMap<String, String> map = new HashMap<>();
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");
        map.put("key4", "value4");
        map.put("key5", "value5");
        Set<String> strings = map.keySet();
        for (String s : strings) {
    
            System.out.println(s+"------"+map.get(s));
        }
    }

运行结果如下图所示

在这里插入图片描述

第二种方式:将HashMap中的数据放在迭代器中,然后循环取出

代码如下

    @Test
    void mapTraversal2() {
    
        HashMap<String, String> map = new HashMap<>();
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");
        map.put("key4", "value4");
        map.put("key5", "value5");
        Iterator<Map.Entry<String, String>> iterator = map.entrySet().iterator();
        while (iterator.hasNext()){
    
            Map.Entry<String, String> next = iterator.next();
            System.out.println(next.getKey()+"------"+next.getValue());
        }
    }

运行结果如下图所示

在这里插入图片描述

第三种方式:通过entrySet遍历

代码如下

    @Test
    void mapTraversal3() {
    
        HashMap<String, String> map = new HashMap<>();
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");
        map.put("key4", "value4");
        map.put("key5", "value5");
        for (Map.Entry<String, String> entry : map.entrySet()) {
    
            System.out.println(entry.getKey()+"------"+entry.getValue());
        }
    }

运行结果如下图所示

在这里插入图片描述

第四种方式:通过map.values()遍历所有的value

代码如下

    @Test
    void mapTraversal4() {
    
        HashMap<String, String> map = new HashMap<>();
        map.put("key1", "value1");
        map.put("key2", "value2");
        map.put("key3", "value3");
        map.put("key4", "value4");
        map.put("key5", "value5");
        for (String value : map.values()) {
    
            System.out.println(value);
        }
    }

运行结果如下图所示

在这里插入图片描述


  另外,在本人公众号上还会有更多的更新,以及一些优质资源分享给大家,希望大家一起交流学习。

公众号:搜索【程序猿小F】

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41903957/article/details/110039410

智能推荐

有符号数和无符号数在计算机中怎么区分?_机器怎么判断带符号二进制数-程序员宅基地

文章浏览阅读4.3k次。确如题主所说,计算机中存储的任何数据都是二进制形式,单看数据是无法认定其格式和内容的。计算机要用二进制编码来表达数值的符号,最直观的方法就是符号位。但为了保证基本算术运算在正负数上的一致性,x86计算机对负数采用了特殊的编码方式,即补码。为什么补码这么巧妙实现了正负数的加减运算?参见维基百科:补码-1的二进制表示下面结合题主提到的寄存器状态举个例子。为简化起见,我们8位二进制数来讲。先看8位二进制与无符号数和有符号数的对应二进制无符号 有符号00000000 0 000000001 1 1_机器怎么判断带符号二进制数

c语言图像剪影代码,信息系C语言社团活动剪影-南京商业学校.PDF-程序员宅基地

文章浏览阅读97次。信息系C 语言社团活动剪影12 月7 日,信息系C 语言社团第 15 周活动在汉中门 17 联院软件班举行,共有 24 位社团成员参加,由赵灵杰主持,指导老师是魏兰。本次活动一共有导入、理论、活动、反馈、总结等5 个版块,活动采取游戏化教学模式形式,活动内容涉及到数学、编程、游戏等方面。为了更好的理解本次社团的活动内容,我们还将采用小游戏的方式使同学们更易理解。本次社团活动充分展现了同学们的逻辑思..._南京商业学校 沈发

论文关于初学计算机的理解,计算机网络学习论文范文-程序员宅基地

文章浏览阅读86次。1.实践研究设计 1.1研究方法 根据问卷调查和访谈法分析我校的学生在通过外语实验教学示范中心进行自主学习的各种不平衡现象和各类问题,问卷调查和访谈重点考察学生对网络学习资源的利用情况、依托网络平台教师的...2019-05-191基于计算机网络具代表性的学习模式 (1)开放性。互联网能够把学校与整个社会紧密联系在一起,可以随时给学习者提供一个开放、互动的学习环境,打破了原有学习时间与空间的限制。...

python modify函数_『Python基础-13』函数 Function-程序员宅基地

文章浏览阅读2.2k次。这篇笔记记录的知识点:函数的基本概念自定义函数函数的几种参数编程的三种方式:1.OOP 面向对象编程,万物皆对象,以class为主,抽象化2.POP 面向过程编程,万事皆过程,def定义过程3.函数式编程,将某种功能封装起来,用的时候直接调用函数名,def定义函数,也叫function/方法/过程/子程序函数的基础概念:函数是一种设计工具,它能让程序员将复杂的系统分解成可管理的部件, 用于将相关功..._python modify函数

前端导出当前页面为PDF或者图片_前端怎样导出整个网页为pdf-程序员宅基地

文章浏览阅读412次。前端导出当前页面为PDF或者图片_前端怎样导出整个网页为pdf

linux grep 正则表达式-程序员宅基地

文章浏览阅读1.1w次,点赞5次,收藏50次。目录1、grep命令2、grep 与正则表达式3、关于匹配的实例4、grep实例1、grep命令功能:输入文件的每一行中查找字符串。基本用法:grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明:-a:将二进制文档以文本方式处理-c:显示匹配次数-i:忽略大小写差异-n:在行首显示行号-A:After的意思,显示匹配字符串后n行的数据-B:before的意思,显示匹配字符串前n行的数据-v:显示_linux grep 正则表达式

随便推点

使用高斯混合模型(GMM)分割图像_gmm图像分割-程序员宅基地

文章浏览阅读6.9k次,点赞2次,收藏38次。使用C++、opencv中的高斯混合模型(GMM)进行图像分割关于GMM聚类的原理及过程可参考博客:https://blog.csdn.net/lin_limin/article/details/81048411使用聚类的方法分割图像,即将图像的像素点值(通常用彩色图像,像素点值为一个三元数组(b,g,r))作为聚类的元素,从而将图像中所有的点分为n类,达到分割的效果。代码:#i..._gmm图像分割

python文本分析库_8种Python文本处理工具集-程序员宅基地

文章浏览阅读1.2k次。文本处理一般包括词性标注,句法分析,关键词提取,文本分类,情感分析等等,这是针对中文的,如果是对于英文来说,只需要基本的tokenize。本文为大家提供了以下这些工具包。1.Jieba【结巴中文分词】做最好的 Python 中文分词组件其功能包括支持三种分词模式(精确模式、全模式、搜索引擎模式),支持繁体分词,支持自定义词典等。代码主页:https://github.com/fxsjy/jieba..._文本分析法用到的工具有哪些

python2 openpyxl 删除一个excel表_Python使用OpenPyXL处理Excel表格-程序员宅基地

文章浏览阅读800次。OpenPyXL库 --单元格样式设置单元格样式的控制,依赖openpyxl.style包,其中定义有样式需要的对象,引入样式相关:from openpyxl.styles import PatternFill, Font, Alignment, Border, SideBorder 边框 Side 边线PatternFill 填充Font 字体Aignment 对齐以上基本可满足需要基本用法是,..._python中的openyxl库无法直接删除整一个工作表。

计算机程序设计员二级证书,办个计算机程序设计员资格证好不好办-程序员宅基地

文章浏览阅读1.9k次。办个计算机程序设计员资格证好不好办?难不难?都要些什么资料叫呢?秦老师一、什么是计算机程序设计员?计算机程序设计员是利用现代信息技术,从事计算机软件编制和设计工作的人员。二、计算机程序设计员证职业等级有哪些?本职业共分三个等级 初级程序员(职业资格五级) 中级程序员(职业资格四级) 程序设计员(职业资格三级),目前鉴定中心一般只鉴定中级和三、怎么报考计算机程序设计员资格证?中级(四级)具备以下条件..._计算机程序设计员 二级

科研/研究生必备软件介绍_看论文记笔记的软件-程序员宅基地

文章浏览阅读844次,点赞19次,收藏20次。本文系统总结了科研必备软件,包括文献管理,写作,笔记,绘图,专业软件。_看论文记笔记的软件

红外图像直方图均衡化算法理解_直方图处理在红外图像处理中的作用是什么-程序员宅基地

文章浏览阅读854次,点赞3次,收藏9次。红外图像均衡化算法的一点理解_直方图处理在红外图像处理中的作用是什么