java map遍歷

map遍歷的兩個維度:

遍歷的方法(foreach還是iterator)
遍歷的元素(只遍歷key或者value還是兩者都需要)

  • for each遍歷key&value
 for(Map.Entry<Integer, String> entry : map.entrySet()) {
            System.out.println(entry.getKey() + ", " + entry.getValue());
        }
  • for each遍歷key 或者map
        for(Integer i : map.keySet()) {
            System.out.println(i);
        }
        for(String s : map.values()) {
            System.out.println(s);
        }
  • 迭代器遍歷
        for(Iterator<Map.Entry<Integer, String >> i = map.entrySet().iterator(); i.hasNext();) {
            Map.Entry<Integer, String > entry = i.next();
            System.out.println(entry.getKey() + ", " + entry.getValue());
        }
        for(Iterator  i = map.entrySet().iterator(); i.hasNext();) {
            Map.Entry entry = (Map.Entry)i.next();
            Integer n = (Integer)entry.getKey();
            String s = (String)entry.getValue();

            System.out.println(n + ", " + s);
        }
  • 最後一種比較奇怪的方法是foreach遍歷key,然後在循環中get value。這種辦法效率很低,不推薦使用
發佈了23 篇原創文章 · 獲贊 15 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章