zoukankan      html  css  js  c++  java
  • Java集合的遍历方式

    Map的遍历

    1.通过map.entrySet遍历Key和Value

    Map<Integer,Integer> map = new HashMap<>();
            map.put(1, 10);
            map.put(2, 8);
    for(Map.Entry<Integer, Integer> entry : map.entrySet()) {
        System.out.println(entry.getKey() + " ---- " + entry.getValue() );
    }

    如果你遍历的Map是一个空的对象(null),for-each循环将会抛出java.lang.NullPointerException异常

    2.通过map.keySet()来遍历key,通过map.values()来遍历Value,适用于只需要map中的Key或者Value的情况

    Map<Integer,Integer> map = new HashMap<>();
            map.put(1, 10);
            map.put(2, 8);
            for (Integer i : map.keySet()) {
                System.out.println(i);
            }
            
            for ( Integer i : map.values()) {
                System.out.println(i);
            }

    3.通过Iterator遍历Map

    //使用泛型
    Map<Integer,Integer> map = new HashMap<>(); map.put(1, 10); map.put(2, 8); Iterator<Map.Entry<Integer, Integer>> iterator = map.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry<Integer, Integer> temp = iterator.next(); System.out.println(temp.getKey() + " ----- " + temp.getValue()); }

    //不使用泛型
    Map<Integer,Integer> map = new HashMap<>();
            map.put(1, 10);
            map.put(2, 8);
            Iterator iterator = map.entrySet().iterator();
            while (iterator.hasNext()) {
                Map.Entry entry = (Map.Entry) iterator.next();
                Integer key = (Integer) entry.getKey();
                Integer value = (Integer) entry.getValue();
                System.out.println(key + " ----- " + value);
            }

    4. 通过key找value(效率低)

    Map<Integer,Integer> map = new HashMap<>();
            map.put(1, 10);
            map.put(2, 8);
            for ( Integer key : map.keySet()) {
                Integer value = map.get(key);
                System.out.println(key + " ----- " + value);
            }

     List的遍历

    1.方式一

    List<Integer> list = new ArrayList<>();
            list.add(1);
            list.add(2);
            for ( Integer i : list) {
                System.out.println(i);
            }

    2.方式二

    List<Integer> list = new ArrayList<>();
            list.add(1);
            list.add(2);
            Iterator iterator = list.iterator();
            while(iterator.hasNext()) {
                System.out.println(iterator.next());
            }

    3.方式三

    List<Integer> list = new ArrayList<>();
            list.add(1);
            list.add(2);
            for ( int i = 0 ; i < list.size() ; i++ ) {
                System.out.println(list.get(i));
            }

    转载于:https://www.cnblogs.com/fangpengchengbupter/p/7339858.html

  • 相关阅读:
    Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. ......
    UVA 1597 Searching the Web
    UVA 1596 Bug Hunt
    UVA 230 Borrowers
    UVA 221 Urban Elevations
    UVA 814 The Letter Carrier's Rounds
    UVA 207 PGA Tour Prize Money
    UVA 1592 Database
    UVA 540 Team Queue
    UVA 12096 The SetStack Computer
  • 原文地址:https://www.cnblogs.com/twodog/p/12139673.html
Copyright © 2011-2022 走看看