Map的两种遍历方式

*********************************************************************************

*****************************Map两种遍历方式*******************************

*********************************************************************************

 1 package ccms;
 2
 3 import java.util.HashMap;
 4 import java.util.Iterator;
 5 import java.util.Map;
 6 import java.util.Set;
 7
 8 public class MapTest {
 9
10     /**
11      * @param args
12      */
13     public static void main(String[] args) {
14         Map<String,String> map = new HashMap<String,String>();
15         map.put("1", "王者荣耀");
16         map.put("2", "刺激战场");
17
18         /*遍历1*/
19         System.out.println("***********遍历1***********");
20         Set<String> set = map.keySet();
21         Iterator<String> it = set.iterator();
22         while(it.hasNext()){
23             String key = it.next();
24             String value = map.get(key);
25             System.out.println("value-"+value);
26         }
27
28         /*遍历2*/
29         System.out.println("***********遍历2***********");
30         Set<Map.Entry<String, String>> s = map.entrySet();
31         Iterator<Map.Entry<String, String>> i = s.iterator();
32         while(i.hasNext()){
33             Map.Entry<String, String> entry = i.next();
34             String key = entry.getKey();
35             String value = entry.getValue();
36             System.out.println("key-"+key+"|value-"+value);
37         }
38
39     }
40
41 }
打印输出结果:

***********遍历1***********
value-刺激战场
value-王者荣耀
***********遍历2***********
key-2|value-刺激战场
key-1|value-王者荣耀

  

原文地址:https://www.cnblogs.com/jiangaofeng/p/10827442.html

时间: 2024-10-13 04:04:56

Map的两种遍历方式的相关文章

Map迭代器两种遍历方式

/* map接口中没有迭代器,那么该怎么遍历? 1:Set<K> keySet() :获取到所有的键,存储到一个Set集合中,并返回该集合,因为Set有迭代器, 每次迭代出来的是一个键,再根据键来得到值 2:Set<Map.Entry<K,V>> entrySet():获取到所有的键值对儿形成的映射关系,存到一个Set集合中,再迭代这个集合 每次迭代出来的是一个映射关系,从这个映射关系中既可以得到键,也可以得到值 这种映射关系是Map.Entry<K,V>类

java map的两种遍历方式

1.1.  通过key得到value //得到所有的key值 Set<String> keySet = map.keySet(); //根据key值得到value值 for (String key : keySet) { System.out.println(key+":"+map.get(key)); } 1.2.  通过entry得到key和value //得到所有的entry Set<Entry<String, String>> entrySe

细说java中Map的两种迭代方式

以前对java中迭代方式总是迷迷糊糊的,今天总算弄懂了,特意的总结了一下,基本是算是理解透彻了. 1.再说Map之前先说下Iterator: Iterator主要用于遍历(即迭代访问)Collection集合中的元素,Iterator也称为迭代器.它仅仅只有三个方法:hasNext(),next()和remove() hasNext():如果仍有元素可以迭代,则返回 true.(换句话说,如果 next 返回了元素而不是 抛出异常,则返回 true). next():返回迭代的下一个元素. re

List集合中两种遍历方式

遍历List集合中的元素的方法有两种: 第一种:利用迭代器遍历 代码1: // 迭代器 Iterator it=list.iterator(); while(it.hasNext()) { System.out.println(it.next()); } 或者代码2: for(Iterator it=list.iterator();it.hasNext();) { System.out.println(it.next()); }// 与while循环相比优点:对象it在循环结束后,变为垃圾,自动

Map集合的两种遍历方式

Map集合:即 接口Map<K,V> map集合的两种取出方式:    1.Set<k> keyset: 将map中所有的键存入到set集合(即将所有的key值存入到set中), 因为Set具备迭代器,可以进行迭代遍历. 所有可以迭代方式取出所有的链,再根据get方法.获取每一个键对应的值. Map 集合的取出原理: 将map集合转成set集合. 再通过迭代器取出    2. set<Map.Entry<k,v>>  entrySet: 将map集合中的映射

Map两种遍历方式与TreeSet两种排序依据

集合:可以存储不同类型的多个对象,随着存储对象的个数的增加而自动扩大容量   体系结构: Collection<E>   |----List:存入的对象是有序的,且可以重复           ArrayList:底层使用的数据结构是数组,线程不安全的,查找速度快,增删速度慢           Vector:底层使用的数据结构是数组,线程安全的,查找速度快,增删速度慢           LinkedList:底层使用的数据结构是链表,线程不安全的,查找速度慢,增删速度快     |----

HashMap的两种遍历方式

HashMap存储的是键值对:key-value . java将HashMap的键值对作为一个整体对象(java.util.Map.Entry)进行处理,这优化了HashMap的遍历处理. 第一种:(只遍历一次,将key及value都放到entry中,效率高) Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { java.util.Map.Entry entry

Map的三种遍历方式

对于Map的三种方式遍历 1.keySet() 2.values() 3.entrySet()三种方式得到Set之后,都可以使用 foreach或者iterator, 不能使用for,因为数据结构决定的 package com.fync.jsj.mapTemplate; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; import ja

Java之List和Map的几种遍历方式

/** * list和map遍历 */ import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; public class list_map遍历{ public static void main(String[] args) { List<String> list=new ArrayList<St