zoukankan      html  css  js  c++  java
  • 遍历hashmap的6种方法

    1、 通过ForEach循环进行遍历

    mport java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
     
    public class Test {
        public static void main(String[] args) throws IOException {
            Map<Integer, Integer> map = new HashMap<Integer, Integer>();
            map.put(1, 10);
            map.put(2, 20);
     
            // Iterating entries using a For Each loop
            for (Map.Entry<Integer, Integer> entry : map.entrySet()) {
                System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
            }
     
        }
    }

    2、 ForEach迭代键值对方式

    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
     
    public class Test {
        public static void main(String[] args) throws IOException {
            Map<Integer, Integer> map = new HashMap<Integer, Integer>();
            map.put(1, 10);
            map.put(2, 20);
     
            // 迭代键
            for (Integer key : map.keySet()) {
                System.out.println("Key = " + key);
            }
     
            // 迭代值
            for (Integer value : map.values()) {
                System.out.println("Value = " + value);
            }
        }
    }

    3、使用带泛型的迭代器进行遍历

    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
     
    public class Test {
        public static void main(String[] args) throws IOException {
            Map<Integer, Integer> map = new HashMap<Integer, Integer>();
            map.put(1, 10);
            map.put(2, 20);
     
            Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator();
            while (entries.hasNext()) {
                Map.Entry<Integer, Integer> entry = entries.next();
                System.out.println("Key = " + entry.getKey() + ", Value = " + entry.getValue());
            }
        }
    }

    4、使用不带泛型的迭代器进行遍历

    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
     
    public class Test {
     
        public static void main(String[] args) throws IOException {
     
            Map map = new HashMap();
            map.put(1, 10);
            map.put(2, 20);
     
            Iterator<Map.Entry> entries = map.entrySet().iterator();
            while (entries.hasNext()) {
                Map.Entry entry = (Map.Entry) entries.next();
                Integer key = (Integer) entry.getKey();
                Integer value = (Integer) entry.getValue();
                System.out.println("Key = " + key + ", Value = " + value);
            }
        }
    }

    5、通过Java8 Lambda表达式遍历

    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
     
    public class Test {
     
        public static void main(String[] args) throws IOException {
     
            Map<Integer, Integer> map = new HashMap<Integer, Integer>();
            map.put(1, 10);
            map.put(2, 20);
            map.forEach((k, v) -> System.out.println("key: " + k + " value:" + v));
        }
    }

    6、使用 Stream API 遍历 HashMap

    package com.java.tutorials.iterations;  
    
    import java.util.HashMap;  
    import java.util.Map;  
    
    /**  
     * 在 Java 中遍历 HashMap 的5种最佳方法  
     * @author Ramesh Fadatare  
     *  
     */  
    public class IterateHashMapExample {  
        public static void main(String[] args) {  
            Map < Integer, String > coursesMap = new HashMap < Integer, String > ();  
            coursesMap.put(1, "C");  
            coursesMap.put(2, "C++");  
            coursesMap.put(3, "Java");  
            coursesMap.put(4, "Spring Framework");  
            coursesMap.put(5, "Hibernate ORM framework");  
    
            // 5. 使用 Stream API 遍历 HashMap  
            coursesMap.entrySet().stream().forEach((entry) - > {  
                System.out.println(entry.getKey());  
                System.out.println(entry.getValue());  
            });  
        }  
    }
    
    
  • 相关阅读:
    Atitit Server Side Include  ssi服务端包含规范 csi  esi
    Atitit 动态按钮图片背景颜色与文字组合解决方案
    Atitit 图像扫描器---基于扫描线
    Atitit usrqbg1821 Tls 线程本地存储(ThreadLocal Storage 规范标准化草案解决方案ThreadStatic
    Atitit usrqbg1834 html的逻辑化流程化 规范标准化解决方案
    Atitit  J2EE平台相关规范--39个  3.J2SE平台相关规范--42个
    Atitit jsr规范化分类 attilax总结
    Atitit attilax总结的对于attilax重要的jsr规范,以及需要增加的jsr规范
    Atitit usbQb212 oo 面向对象封装的标准化与规范解决方案java c# php js
    Atitit jsr规范有多少个  407个。Jsr规范大全
  • 原文地址:https://www.cnblogs.com/flame540/p/12838448.html
Copyright © 2011-2022 走看看