Map遍历的几种方法
查看Map自带API
map遍历方法:
public static void main(String[] args) {
Map<Integer,String> map = new HashMap<Integer,String>(); map.put(10,"first");
map.put(20,"second");
map.put(30,"third"); /**
* 通过map.keySet遍历key,通过map.get(key)取value
*
* 特点:适用于仅获取key的情况,同时也可通过key获取value,
* 不过不推荐使用该方法获取value(原因:通过key值去计算对应的hash,然后再通过hash获取对应的结果值,会导致效率较低)
*/
for (Integer key:map.keySet()
) {
System.out.println("key is " + key +" and value is " + map.get(key));
} /**
* 通过map.entrySet()遍历该map,通过entry.getKey()获取key entry.getValue()获取value
*
* 特点:同时需要key和value时推荐使用
* hashMap内部的存储结构就是基于Entry的数组,在用这种方式进行遍历时,只需要遍历一次即可
*/
for (Map.Entry<Integer,String> entry:map.entrySet()
) {
System.out.println("key is " + entry.getKey() + " and value is " + entry.getValue());
} /**
* 通过map.entrySet()使用iterator遍历,it.getKey()获取key it.getValue()获取value
*
*特点:效率同map.entrySet(),增加删除元素的功能,可以使用Iterator的remove方法删除元素
*/
Iterator<Map.Entry<Integer,String>> iterator = map.entrySet().iterator();
while(iterator.hasNext()){
Map.Entry<Integer,String> it = iterator.next();
//删除元素
if("second".equals(it.getValue())){
iterator.remove();
}
System.out.println("key is " + it.getKey() + " and value is "+ it.getValue());
} /**
* 通过map.values()获取所有的value遍历,适用于只获取value的情景
*
* 特点:适用于仅取value的情况
*/
for (String value:map.values()
) {
System.out.println("value is "+value);
} /**
* java8 Lambda表达式遍历
*/
map.forEach((key, value) -> {
System.out.println("Lambda-> key is " + key + "and value is" + value);
}); }
Map遍历的几种方法的更多相关文章
- map遍历的四种方法
public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...
- Map 遍历的几种方法
复习map的过程中想到的,做个简单的记录 public class HashMapTest { public static void main(String args[]) { Map<Inte ...
- (转载)Java中如何遍历Map对象的4种方法
在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...
- map遍历的四种方式
原文 http://blog.csdn.net/dayanxuqun/article/details/26348277 以下是map遍历的四种方式: // 一.推荐只用value的时候用,都懂的... ...
- JavaScript遍历对象4种方法和遍历数组的3种方式 代码
//遍历对象 4种方法 //Object.keys(obj).forEach() console.log("keys...遍历</br>") var obj1 = { ...
- Map集合遍历的2种方法
Map是一个集合的接口,是key-value相映射的集合接口,集合遍历的话,需要通过Iterator迭代器来进行. Iterator是什么东西: java.util包下的一个接口: 对 collect ...
- 遍历Map key-value的两种方法
以前遍历Map key-value比较习惯的方式是先获取Map中的所有key值,然后根据key,依次从Map中去数据,基本方式如下: Map<String,String> testData ...
- map集合遍历的五种方法
package com.jackey.topic; import java.util.ArrayList;import java.util.HashMap;import java.util.Itera ...
- Map<String, String> 遍历的四种方法
Map<String, String> map = new HashMap<String, String>(); map.put("key1", " ...
随机推荐
- asp.net获取当前网址url【转】
设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli "http://"是协议名 "www.jb5 ...
- 如何确定一个NFS的mount是v3还是v4?
命令如下: nfsstat –m nfsstat –m | grep /home/mymnt 参考资料 ============ https://unix.stackexchange.com/ques ...
- ASP.NET MVC3 学习心得------路由机制
9.1 理解URL URL满足的要求: l 域名易于记忆和拼写 l 简短.易输入 l 可以反应出站点的结构 l 可破解,用户可以通过移除URL的末尾,进而达到更高层次的信息体系结构 l 持久.不能变化 ...
- checkbox反复调用attr('checked', true/false)只有第一次生效
/** * 全选 */ function checkAll() { $("input[name=ids]").attr("checked", true); } ...
- 大数据开发实战:Stream SQL实时开发二
1.介绍 本节主要利用Stream SQL进行实时开发实战,回顾Beam的API和Hadoop MapReduce的API,会发现Google将实际业务对数据的各种操作进行了抽象,多变的数据需求抽象为 ...
- SAP ABAP编程 取得用户中文名称
有时候我们知道SAP当前用户登录的ID,也就是SY-UNAME.能够取得用户中文名称.例如以下: ***取得用户中文名称 DATA: g_sheet_jsr TYPE string. "用 ...
- 简单介绍Ceph分布式存储集群
在规划Ceph分布式存储集群环境的时候,对硬件的选择很重要,这关乎整个Ceph集群的性能,下面梳理到一些硬件的选择标准,可供参考: 1)CPU选择 Ceph metadata server会动态的重新 ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(八)安装zookeeper-3.4.12
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
- Eclipse技术: 项目文件中过滤.o文件
1. 右建项目 -> Properties. 2. 增加过滤规则
- IJPay 让支付触手可及-文中有视频
IJPay 让支付触手可及 GitHub:https://github.com/Javen205/IJPay Gitee:http://gitee.com/Javen205/IJPay JPay 是对 ...