首页 > 代码库 > 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 = http://www.mamicode.com/(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)); }
Java集合的遍历方式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。