欢迎来到刘认真的博客

It's not me that's wrong. It's the whole world

java 集合之HashMap的三种遍历

HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。

这周我们只需记住三种遍历方法

1.通过keySet()获取键,再利用hashmap里面的.get(key)方法通过键获取值

2.通过Map.entry()获取键值对,可以同时利用迭代器直接遍历

3.通过父类Collection获取值

 1 package com.test.first;
 2 
 3 import java.util.ArrayList;
 4 import java.util.Collection;
 5 import java.util.HashMap;
 6 import java.util.Iterator;
 7 import java.util.Map.Entry;
 8 import java.util.Set;
 9 
10 public class Test06 {
11     public static void main(String[] args) {
12         HashMap<String, Character> hashMap=new HashMap<String, Character>();
13         //添加元素
14         hashMap.put("王祖贤", '女');
15         hashMap.put("林俊杰", '男');
16         hashMap.put("林青霞", '女');
17         //通过keyset获取键 在通过HashMap.get(key)方法通过键获取值
18         Set<String> set=hashMap.keySet();
19         for (String string : set) {
20             System.out.println(string+" "+hashMap.get(string));
21         }
22         System.out.println("-------------------");
23         
24         //通过Map.entry()方法获取键值对
25         Set<Entry<String, Character>> entrySet = hashMap.entrySet();
26         for (Entry<String, Character> entry : entrySet) {
27             System.out.println(entry);
28         }
29         System.out.println("-------------------");
30         //通过迭代器与Map.entry()方法获取键值对
31         Iterator<Entry<String, Character>> iterator = hashMap.entrySet().iterator();
32         for (Entry<String, Character> entry : entrySet) {
33             System.out.println(entry);
34         }
35         System.out.println("-------------------");
36         
37         //通过父类Collection获取值
38         Collection<Character> values = hashMap.values();
39         for (Character character : values) {
40             System.out.println(character);
41         }
42 
43     }
44 }

运行结果:

一定是利用hashmap里面的.get(key)的键获取值!

Map.entry()是导的Map包不要导错!

posted @ 2019-06-03 17:39  刘认真  阅读(6571)  评论(0编辑  收藏  举报