zoukankan      html  css  js  c++  java
  • Java遍历Map的3种方式

    package test;
    
    import java.util.Collection;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Map.Entry;
    import java.util.Set;
    
    import org.junit.Before;
    import org.junit.Test;
    
    /**
     * 对于Map的三种方式遍历 1.keySet() 2.values() 3.entrySet()
     * 三种方式得到Set之后,都可以使用 foreach或者iterator, 不能使用for,因为数据结构决定的
     *
     * @author Administrator
     *
     */
    public class MapCycle {
    
              Map<Integer, String> map;
    
               // 准备好数据
               @Before
               public void testData() {
                        map = new HashMap<Integer, String>();
                        map.put(1, "张学友");
                        map.put(2, "刘德华");
                        map.put(3, "郭富城");
                        map.put(4, "黎明");
                        map.put(5, "周润发");
              }
    
               /** 测试三种方式,这三种方式最后都是遍历Set,于是都可以使用 foreach或者Iterator **/
               // 方式1: keySet()方法获取到Set(key)
               @Test
               public void testFirst() {
                       Set<Integer> set = map.keySet();
                        for (Integer integer : set) {
                                 System. out.println( map.get(integer));
                       }
              }
    
               // 方式2:values()方法获取到Collection(value)
               @Test
               public void testSecond() {
                       Collection<String> collection = map.values();
                        for (String string : collection) {
                                 System. out.println(string);
                       }
              }
    
               // 方式3:entrySet()方法获取到Set<Entry<key,value>>
               @Test
               public void testThird() {
                       Set<Entry<Integer, String>> entries = map.entrySet();
                        for (Entry<Integer, String> entry : entries) {
                                 System. out.println(entry.getValue());
                       }
              }
    }
  • 相关阅读:
    luogu2568GCD题解--欧拉函数
    POJ1845Sumdiv题解--约数之和
    luogu1731生日蛋糕题解--恶心剪枝
    luogu1156垃圾陷阱题解--背包DP
    CF336C-Vasily the Bear and Sequence题解--贪心
    luogu2261余数求和题解--整除分块
    UVA10140PrimeDistance题解--质数/技巧
    CSP2019 游记
    CSP-SJX2019 和积和
    NOIP2018 游记
  • 原文地址:https://www.cnblogs.com/dreamroute/p/3634486.html
Copyright © 2011-2022 走看看