Map的遍历方式-Map.EntrySet的用法

Map的遍历大体有3种:

1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中,

放着的就是Map中的某一对key-value;

2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来

读取Map中的元素;

3、遍历Map.values():它是Map中value的集合,我们可以直接通过这个集合遍历

Map中的值,却不能读取key。

ü 例子

package testcase;

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map.Entry;

import java.util.Map;

public class TestEntrySet {

public static void main(String args[]){

Map<String ,String> map =  new HashMap<String,String>();

map.put("1","zhangsan");

map.put("2","zhangsan");

map.put("3","zhangsan");

System.out.println(map.entrySet());

/* 方法一*/

System.out.println("方法一");

for (Map.Entry<String, String> m : map.entrySet()){

System.out.println("key:"+ m.getKey()+" value:"+m.getValue());

}

/* 方法二*/

System.out.println("方法二");

Iterator iterator = map.entrySet().iterator();

while(iterator.hasNext()){

@SuppressWarnings("unchecked")

Map.Entry<String, String> entry = (Entry<String,String>)iterator.next();

System.out.println("key:"+ entry.getKey()+" value:"+entry.getValue());

}

}

}

时间: 2024-10-03 08:16:07

Map的遍历方式-Map.EntrySet的用法的相关文章

Java Map各遍历方式的性能比较

1. 阐述 对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多.理由是:entrySet方法一次拿到所有key和value的集合:而keySet拿到的只是key的集合,针对每个key,都要去Map中额外查找一次value,从而降低了总体效率.那么实际情况如何呢? 为了解遍历性能的真实差距,包括在遍历key+value.遍历key.遍历value等不同场景下的差异,我试着进行了一些对比测试. 2. 对比测试 一开始只进行了简单的测试,但结果却表明k

Map的遍历及map的value值遍历及value转化为其它类型

先开始map的遍历: Map<String, String> map = new HashMap<String, String>();  map.put("1", "2");  map.put("2", "4");  map.put("3", "1");  map.put("4", "3"); 一.把key值放进set排序:

map的遍历方式(使用Junit测试)

package cn.sdut.lah; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import org.junit.After; import org.junit.Before; import org.junit.Test; public class Demo2 { Map map = n

map的遍历方式

1 Map<String,String> map = new HashMap<String,String>(); 2 map.put("shandong","jinan"); 3 map.put("shanxi","xian"); 4 map.put("jiangsu", "nanjing"); 5 System.out.println("Method

Java Map遍历方式的选择

1. 阐述 对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多.理由是:entrySet方法一次拿到所有key和value的集合:而keySet拿到的只是key的集合,针对每个key,都要去Map中额外查找一次value,从而降低了总体效率.那么实际情况如何呢? 为了解遍历性能的真实差距,包括在遍历key+value.遍历key.遍历value等不同场景下的差异,我试着进行了一些对比测试. 2. 对比测试 一开始只进行了简单的测试,但结果却表明k

【转】Java Map遍历方式的选择

1. 阐述 对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多.理由是:entrySet方法一次拿到所有key和value的集合:而keySet拿到的只是key的集合,针对每个key,都要去Map中额外查找一次value,从而降低了总体效率.那么实际情况如何呢? 为了解遍历性能的真实差距,包括在遍历key+value.遍历key.遍历value等不同场景下的差异,我试着进行了一些对比测试. 2. 对比测试 一开始只进行了简单的测试,但结果却表明k

STL中map的遍历

map作为STL中的映射容器非常好用,我们来说一下map的遍历. map.first为key值,map.second为value值,key不可修改,value可修改. 定义一个迭代指针iter,使其指向map,实现对map的遍历. 1 #include <iostream> 2 #include <map> 3 #include <string> 4 5 using namespace std; 6 7 int main() 8 { 9 map<string,in

各种集合的遍历方式

List ArrayLIst ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("苹果"); arrayList.add("香蕉"); arrayList.add("西瓜"); arrayList.add("葡萄"); //for循环 for(int i=0; i < arrayList.size();i++) { Sys

Java之Map遍历方式性能分析:ketSet与entrySet

keySet():将Map中所有的键存入到Set集合中.因为set具备迭代器,所以可以以迭代方式取出所有的键,再根据get方法获取每一个键对应的值,其仅能通过get()取key. entrySet(): 返回此映射中包含的映射关系的 Set 视图,格式为Set<Map.Entry<K,V>>, Map.Entry表示映射关系,迭代后可以e.getKey().e.getValue()取key和value,返回的是Entry接口 . keySet()方式 Set<String&g