zoukankan      html  css  js  c++  java
  • 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. }  
  • 相关阅读:
    mysql 函数 存储过程 事件(event) job 模板
    protobuf 无proto 解码 decode 语言 java python
    mitmproxy fiddler 抓包 填坑
    android adb 常用命令
    android机器人 模拟 踩坑过程
    RabbitMQ添加新用户并支持远程访问
    Windows下RabbitMQ安装及配置
    Java mybatis mysql 常用数据类型对应关系
    easyExcel 踩坑
    linux防火墙查看状态firewall、iptable
  • 原文地址:https://www.cnblogs.com/zhongmingyuan/p/4911706.html
Copyright © 2011-2022 走看看