• Map的遍历方式


    根据Map本身结构,其遍历方式大概有三种:

    1、通过key遍历;

    2、通过key + value遍历;

    3、通过value遍历。

    根据具体需求采用不同的遍历方式,第二种方式比较常用,但当数据量不大,而且key值是比较简单的数值型字符串时,第一种比第二种稍快,可以考虑第一种方式。

    根据java语法可以有2中写法:

    1、使用for循环;

    2、使用iterator迭代;

    两种方式效率差不多;使用for循环稍微好一点;

    具体遍历代码如下:

    package com.my.project;
    
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
    //Map的几种遍历方式
    public class TravelMap {
        public static void main(String[] args){
            Map<String, String> map = new HashMap<String, String>();
            map.put("1", "value1");
            map.put("2", "value2");
            map.put("3", "value3");
        /*==========================第一种,通过key遍历=========================================*/    
            //for循环写法
            for(String key:map.keySet()){
                System.out.println("key = " + key);
                System.out.println("value = " + map.get(key));
            }
            //迭代写法
            Iterator<String> ite = map.keySet().iterator();
            while(ite.hasNext()){
                String key = ite.next();
                String value = map.get(key);
            }
        /*==========================第二种,通过迭代遍历=========================================*/
            //for循环写法,容量大时使用
            for(Map.Entry<String, String> entry : map.entrySet()){
                String key = entry.getKey();
                String value = entry.getValue();
                System.out.println("key = " + key);
                System.out.println("value = " + value);
            }
            //迭代写法
            Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
            while(it.hasNext()){
                Map.Entry<String, String> entry = it.next();
                String key = entry.getKey();
                String value = entry.getValue();
                System.out.println("key = " + key);
                System.out.println("value = " + value);
            }
        
        /*==========================第三种,通过value遍历=========================================*/    
            for(String value : map.values()){
                System.out.println(value);
            }
            
            
        }
    
    }
  • 相关阅读:
    二分法扩展——就近查找
    Right Dominant Elements问题
    数组循环左移
    两个有序序列的中位数
    装箱问题
    IDEA中Tomcat热部署不生效问题解决办法
    H2数据库简单使用操作
    常用网站
    Spring Framwork Maven dependency
    报错Too many connections
  • 原文地址:https://www.cnblogs.com/zhangchunxi/p/3820229.html
Copyright © 2020-2023  润新知