hashMap4种遍历方式
package collection; import java.util.Collection;
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.Map;
import java.util.Set; public class MapTest {
public static void main(String[] args) {
Map<String,Integer> m = new HashMap<>();
m.put("hello", 11);
m.put("world", 11);
m.put("nihao", 21);
m.put("shijie", 22); //输出map中的所有value
Collection<Integer> values = m.values();
for(int value: values) {
System.out.println(value);
} //map遍历1,通过keySet获得map中所有可以的集合,在通过key得到value
//这种方式会遍历两次,一次是对key值得iterator,再一次是通过key获得值
System.out.println("--------map遍历1------------");
Set keySet = m.keySet();
Iterator<String> it = keySet.iterator();
while(it.hasNext()) {
String key = it.next();
System.out.print("[key=" + key + ",value=" + m.get(key) + "] ");
} //map遍历2,foreach方法来遍历keyset,和第一种没有什么区别
System.out.println("--------map遍历2------------");
for(Object key: keySet) {
System.out.print("[key=" + key + ",value=" + m.get(key) + "] ");
} //map遍历3,Map内部的Entry封装所有map的key-value对放入集合中,集 //合中的一个元素就包括了key和value,这样就之遍历一次就能得到集合,并可以访问所
//有key-value。
System.out.println("--------map遍历3------------");
Set entrySet = m.entrySet();
Iterator it1 = entrySet.iterator();
while(it1.hasNext()) {
@SuppressWarnings("unchecked")
Map.Entry<String, Integer> e = (Map.Entry<String, Integer>)it1.next();
System.out.print("[key=" + e.getKey() + ",value=" + e.getValue() + "] ");
} System.out.println();
System.out.println("--------map遍历4------------");
//map遍历4,java8中新增方法。
m.forEach((key,value) -> {
System.out.print("[key=" + key + ",value=" + value + "] ");
}); //关于hashMap的遍历,推荐使用3,4两种方法。 }
}
hashMap4种遍历方式的更多相关文章
- Map三种遍历方式
Map三种遍历方式 package decorator; import java.util.Collection; import java.util.HashMap; import java.util ...
- iOS开发中数组常用的五种遍历方式
随着iOS的不断发展,apple也不断推出性能更高的数组遍历方式,下面将对熟悉的五种遍历方式进行列举. 首先定义一个数组,并获取数组长度 NSArray *array=@[",]; NSIn ...
- lua中for循环的四种遍历方式
lua中for的四种遍历方式区别 table.maxn 取最大的整数key #table 从1开始的顺序整数最大值,如1,2,3,6 #table == 3 key,value pairs 取每一 ...
- HashMap的两种遍历方式
HashMap的两种遍历方式 HashMap存储的是键值对:key-value . java将HashMap的键值对作为一个整体对象(java.util.Map.Entry)进行处理,这优化了Hash ...
- Java中List集合的三种遍历方式(全网最详)
List集合在Java日常开发中是必不可少的,只要懂得运用各种各样的方法就可以大大提高我们开发的效率,适当活用各种方法才会使我们开发事半功倍. 我总结了三种List集合的遍历方式,下面一一来介绍. 首 ...
- list的四种遍历方式
1.手先增强for循环和iterator遍历的效果是一样的,也就说 增强for循环的内部也就是调用iteratoer实现的,但是增强for循环 有些缺点,例如不能在增强循环里动态的删除集合内容.不能获 ...
- set的三种遍历方式-----不能用for循环遍历(无序)
set的三种遍历方式,set遍历元素 list 遍历元素 http://blog.csdn.net/sunrainamazing/article/details/71577662 set遍历元素 ht ...
- HashMap概述及其三种遍历方式
一.HashMap概述: 1.HashMap是一个散列表,它存储的是键值对(key-value)映射: 2.HashMap继承AbstractMap,实现了Map,Cloneable,Serializ ...
- Map 的四种遍历方式
Map 的四种遍历方式 import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class ...
随机推荐
- MyEclipse 修改项目字符集
项目->右键+properties->Resource->Text file container->others->utf-8
- 前端开发 Grunt 之 Connect详解
在前端开发过程中,我们需要在开发过程中,将开发中的站点部署到服务器上,然后,在浏览器中查看实际的效果,在 Grunt 环境下,可以直接使用集成在 Grunt 中的 Connect 插件完成站点服务器的 ...
- Violin 琴弦介绍
共四根弦,从粗到细: 第四弦:音名:G:唱名:Sol 第三弦:音名:D:唱名:Re 第二弦:音名:A:唱名:La 第一弦:音名:E:唱名:Mi
- XML 特殊字符处理和 CDATA
在处理XML数据时,特殊字符要特殊处理,不能和节点字符混淆. 所有 XML 文档中的文本均会被解析器解析. 只有 CDATA 区段(CDATA section)中的文本会被解析器忽略. PCDATA ...
- Composer PHP依赖管理的新时代
安装Composer Composer需要PHP 5.3.2+才能运行. $ curl -sS https://getcomposer.org/installer | php 这个命令会将compos ...
- linux下两台服务器文件实时同步方案设计和实现
inux下两台服务器文件实时同步方案设计和实现 假设有如下需求: 假设两个服务器: 192.168.0.1 源服务器 有目录 /opt/test/ 192.168.0.2 目标服务器 有目录 /o ...
- 天兔(Lepus)监控操作系统(OS)安装配置
监控和被监控端都要安装和配置snmp: [root@HE1bin]# yum install net-snmp* [root@HE1bin]# vi /etc/snmp/snmpd.conf 41行将 ...
- NSArray和NSSet的区别
NSSet到底什么类型? 其实它和NSArray功能性质一样,用于存储对象,属于集合: NSSet , NSMutableSet类声明编程接口对象,无序的集合,在内存中存储方式是不连续的 像NSAr ...
- 用 NodeJS 实现 BigPipe
BigPipe 是 Facebook 开发的优化网页加载速度的技术.网上几乎没有用 node.js 实现的文章,实际上,不止于 node.js,BigPipe 用其他语言的实现在网上都很少见.以至于这 ...
- 框架基础:ajax设计方案(三)--- 集成ajax上传技术 大文件/超大文件前端切割上传,后端进行重组
马上要过年了,哎,回家的心情也特别的激烈.有钱没钱,回家过年,家永远是舔舐伤口最好的地方.新的一年继续加油努力. 上次做了前端的ajax的上传文件技术,支持单文件,多文件上传,并对文件的格式和大小进行 ...