Java之Map取出元素的三种方式



From Syliu

Map集合取出元素的原理:
先将map集合转成Set集合。然后对set集合进行迭代。
keySet:将所有的键取出存放在Set集合中,对Set集合进行迭代,并通过map集合的get方法,获取键所对应的value。


entrySet:将键值的关系取出存入到了Set集合中。键值关系有自己的类型就是:Map.Entry。
Map.Entry就是Map接口中定义了一个静态接口Entry
可以通过Map.Entry对象的getKey(),getValue().values()

 

 1 import java.util.*;
 2 
 3 public class HashMapDemo1 {
 4 
 5     /**
 6      * @param args
 7      * 存入键值 ,要保证键的唯一性。
 8      */
 9     public static void main(String[] args) {
10         // TODO Auto-generated method stub
11         HashMap<String, String> hm=new HashMap<String,String>();
12         hm.put("zs", "beijing");
13         hm.put("ls", "nanjing");
14         hm.put("was", "beijing");
15         hm.put("zdds", "shenzhen");
16         hm.put("ls", "tieling"); // 键相同时,存入后存的值
17         //取出元素第一种方式:keySet()
18         //将所有的键取出存在SET中,在通过键取出键所对应的值!
19         Set<String> keSet=hm.keySet();
20         for (Iterator<String> iterator = keSet.iterator(); iterator.hasNext();) {
21             String string = iterator.next();
22             //System.out.println(string+" value: "+hm.get(string));
23             
24         }
25         //第二种方式 entrySet()
26         Set<Map.Entry<String, String>> set2=hm.entrySet();    
27         for (Iterator <Map.Entry<String, String>> iterator = set2.iterator(); iterator.hasNext();) {
28             Map.Entry<String, String> entry = (Map.Entry<String, String>) iterator
29                     .next();
30             String key=entry.getKey();
31             String valueString=entry.getValue();
32             System.out.println(key+"...."+valueString);
33             
34         }
35         //第三种取出方式 values()
36         Collection<String> co=hm.values();
37         for (Iterator<String> iterator = co.iterator(); iterator.hasNext();) {
38             String string = (String) iterator.next();
39             System.out.print(string);
40         }
41     }
42 
43 }

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2024 CODEPRJ.COM