Java Map的几种循环方式学习总结[通俗易懂]

java Map的几种循环总结

大家好,又见面了,我是全栈君。

1:根据JDK的新特性,用For循环Map,例如循环Map的Key

Map<Object , Object> map = new HashMap<Object, Object>();
		for (int i = 0; i < 10; i++) {
			map.put(i, i+1);
		}
		for (Object key : map.keySet()) {
			System.out.println("key = " + key);
		}


2:对整Map的key和value都进行循环,如下:

for(Map.Entry<String, Object> entry : paraMap.entrySet())    
{    
    System.out.println(entry.getKey()+": "+entry.getValue());    
} 

3:使用Iterator 

Iterator it = paraMap.entrySet().iterator();    
while (it.hasNext())     
{    
        Map.Entry map = (Map.Entry)it.next();    
        System.out.println(map .getKey() + " = " + map .getValue());    
 }  

对上面的内容进行更新!将三种方式完整呈现!

package com.dufyun.javase.jihe;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;

/**
 * 练习循环map集合中key和value的方法
 * @author aflyun
 * 
 *
 */
public class TestMap {
	
	   
	public static void main(String[] args) {
		Map<Object , Object> map = new HashMap<Object, Object>();
		for (int i = 0; i < 10; i++) {
			map.put(i, i+1);
		}
		
		firstLoopMap(map);
		secodnLoopMap(map);
		thirdLoopMap(map);
	}
	
	/**
	 * 1:循环 map 中的key<br/>
	 * 	 根据JDK的新特性,用For循环Map,例如循环Map的Key 和 value 
	 * @param map
	 */
	public static void firstLoopMap(Map<Object, Object> map) {
		for (Object key : map.keySet()) {
			System.out.println("key = " + key +"--value = " + map.get(key));
		}
	}
	/**
	 * 2:循环 map 中的key 和 value<br/>
	 * entrySet 
	 * @param map
	 */
	public static void secodnLoopMap(Map<Object , Object> map) {
		for (Map.Entry<Object, Object> entry : map.entrySet()) {
			System.out.println("key = " + entry.getKey() +"--value = " + entry.getValue());
		}
	}
	
	/**
	 * 3:循环Map的key 和value<br/>
	 * iterator
	 * @param map
	 */
	public static void thirdLoopMap(Map<Object, Object> map) {
		Iterator it = map.entrySet().iterator();
		while(it.hasNext()){
			Map.Entry<Object, Object> m = (Entry<Object, Object>) it.next();
			System.out.println("key = " + m.getKey() +"---value = "+ m.getValue());
		}
				
	}
}

输出的内容:

key = 0---value = 1
key = 1---value = 2
key = 2---value = 3
key = 3---value = 4
key = 4---value = 5
key = 5---value = 6
key = 6---value = 7
key = 7---value = 8
key = 8---value = 9
key = 9---value = 10

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

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

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


相关推荐

  • linux(4)Linux 文件内容查看「建议收藏」

    linux(4)Linux 文件内容查看「建议收藏」查看文件内容总览cat由第一行开始显示文件内容tac从最后一行开始显示,可以看出tac是cat的倒着写!nl显示的时候,顺道输出行号!more一页一页的显示文件内容less

    2022年7月28日
    7
  • vb封装vba代码成exe文件_宏vba安装包

    vb封装vba代码成exe文件_宏vba安装包将ExcelVBA封装成exe程序[老贴收藏]假如您手头已有一xls文档等待封装,假如您机子上已安装有VB6开发系统,那么请跟着往下操作:一、用VB制作EXE文件头部分1、打开VB,“文件”-“新建工程”-“标准EXE”;2、此时会出现名为Form1的默认窗体编辑窗口,Form1将作为软件启动封面窗体,打开该Form1的属性窗口,对如下属性进行设置:BorderStyle=0,…

    2022年10月3日
    2
  • 基于近邻的协同过滤算法「建议收藏」

    基于近邻的协同过滤算法「建议收藏」这节课我们来学习K近邻在推荐系统中的应用,你将完成本课程的第一个实战项目:基于KNN的电影推荐系统!为了使你能够顺利地完成实战内容,我们先了解一下推荐系统中的基础知识。基于近邻用户的协同过滤假定有一个场景:某个周日的下午,你感觉很无聊,然后从电脑上打开了一个视频网站,想看下最近有什么好看的电影。然而你发现网站上的热门电影基本都看过,其他的电影又太多,不知道该看什么。想使用搜索框去查一下,但是又不知道该搜什么关键词,这个时候你的内心很焦灼,总不能挨个去尝试吧,那时间成本也太大了…仔细想想还是有办法的,那

    2022年6月30日
    26
  • Xray基础使用介绍

    Xray基础使用介绍官方使用文档:https://docs.xray.cool/#xray简介xray是一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,主要特性有:检测速度快。发包速度快;漏洞检测算法高效。支持范围广。大至OWASPTop10通用漏洞检测,小至各种CMS框架POC,均可以支持。代码质量高。编写代码的人员素质高,通过CodeReview、单元测试、集成测试等多层验证来提高代码可靠性。高级可定制。通过配置文件暴露了引擎的各种参数,通过修改配置文件可以极大的客

    2022年5月8日
    158
  • 使用yum卸载、安装jdk

    使用yum卸载、安装jdk由于EPICS工作环境下安装CSS,但CSS不支持开源jdk,所以首先需要卸载openjdk,然后再安装jdk-8u144-linux-x64.tar.gz(CSS只支持8及以上版本)。一、卸载,需卸载干净,不然会出各种覆盖问题,很麻烦!安装好的CentOS会自带OpenJdk,用命令java-version,会有下面的信息:javaversion"1.6.0"OpenJDK Run…

    2022年6月6日
    61
  • 铁通宽带dns地址(成都dns的服务器地址是多少)

    全国各地电信DNS见下:—————————————————————-北京DNS地址:202.96.199.133202.96.0.133202.106.0.20202.106.148.1202.97.16.195上海DNS地址:202.96.199.132202.96.199.133202.96.20

    2022年4月16日
    106

发表回复

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

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