Map三種遍歷方式


第一種:

最常規的一種遍歷方法,最常規就是最常用的,雖然不復雜,但很重要,這是我們最熟悉的。

 

 

Java代碼  
  1. import java.util.Collection;  
  2. import java.util.Iterator;  
  3. import java.util.Map;  
  4. import java.util.HashMap;  
  5.   
  6.     /** 
  7.      * 1.把值放到一個集合里,然后遍歷集合 
  8.      */  
  9. public class TraversalMap1 {  
  10.     private static Map<Integer, String> map;  
  11.     private static TraversalMap1 getMap(){  
  12.         map = new HashMap<Integer, String>();  
  13.         for(int i = 0 ; i < 10 ; i ++){  
  14.             if(map.isEmpty()) map.put(i, "String " + i);  
  15.             else if(map.get(i) == null) map.put(i,"String " + i) ;  
  16.         }  
  17.         return null;  
  18.     }  
  19.       
  20.     public static void main(String[] args){  
  21.         getMap();  
  22.         Collection<String> c = map.values();  
  23.         Iterator i = c.iterator();  
  24.         for(; i.hasNext() ;){  
  25.             System.out.println(i.next());//遍歷出map內的所有value  
  26.         }  
  27.           
  28.     }     
  29. }  

 

 

第二種:

利用keyset進行遍歷,它手優點在於可以根據你所想要的key值得到你想要的values,更具靈活性。

 

 

Java代碼  
  1. import java.util.Set;  
  2. import java.util.Iterator;  
  3. import java.util.Map;  
  4. import java.util.HashMap;  
  5.     /** 
  6.     * 2.把key放到一個集合里,遍歷key值同時根據key得到值 
  7.     */  
  8. public class TraversalMap2 {  
  9.     private static Map<Integer, String> map;  
  10.     private static TraversalMap2 getMap(){  
  11.         map = new HashMap<Integer, String>();  
  12.         for(int i = 0 ; i < 10 ; i ++){  
  13.             if(map.isEmpty()) map.put(i, "String " + i);  
  14.             else if(map.get(i) == null) map.put(i,"String " + i) ;  
  15.         }  
  16.         return null;  
  17.     }  
  18.       
  19.     public static void main(String[] args){  
  20.         getMap();  
  21.         Set set = map.keySet();  
  22.         Iterator i = set.iterator();  
  23.         for(; i.hasNext() ;){  
  24.             System.out.println(i.next());//遍歷出map內的所有key  
  25.         }  
  26.           
  27.     }     
  28. }  

 

第三種:

比較復雜的一種遍歷在這里,呵呵~~它很暴力哦,它的靈活性太強了,想得到什么就能得到什么~~

 

 

Java代碼  
  1. import java.util.Map;  
  2. import java.util.HashMap;  
  3.     /** 
  4.     * 3.把一個map對象放到放到entry里,然后根據entry同時得到key和value 
  5.     */  
  6. public class TraversalMap3 {  
  7.     private static Map<Integer, String> map;  
  8.     private static int num = 0 ;  
  9.     private static String str = "";  
  10.     private static TraversalMap3 getMap(){  
  11.         map = new HashMap<Integer, String>();  
  12.         for(int i = 0 ; i < 10 ; i ++){  
  13.             if(map.isEmpty()) map.put(i, "String " + i);  
  14.             else if(map.get(i) == null) map.put(i,"String " + i) ;  
  15.         }  
  16.         return null;  
  17.     }  
  18.       
  19.     public static void main(String[] args){  
  20.         getMap();  
  21.         for(Map.Entry<Integer, String> entry : map.entrySet()){  
  22.             num = entry.getKey();  
  23.             str = entry.getValue();  
  24.             System.out.println("the map key is : " + num + " || the value is : " + str);//顯示出map的key和value  
  25.         }  
  26.           
  27.     }     
  28. }  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM