本文共 1098 字,大约阅读时间需要 3 分钟。
public class TestDemo { public static void main(String[] args) { HashMaphashMap = new HashMap<>(); hashMap.put("a", "工人"); hashMap.put("b", "老师"); hashMap.put("c", "公务员"); Iterator iterator = hashMap.keySet().iterator(); while (iterator.hasNext()) { String key = (String) iterator.next(); String values = (String) iterator.next(); System.out.println("初始化后的map:"); System.out.println(key); System.out.println(values); } }}
出现异常:
Exception in thread "main" java.util.NoSuchElementException
Iterator类的next( )方法在同一循环中不能出现两次。会导致最后一次的游标指向空值。
更改为下面代码:
public static void main(String[] args) {HashMaphashMap = new HashMap<>();hashMap.put("a", "工人");hashMap.put("b", "老师");hashMap.put("c", "公务员");Iterator > iterator = hashMap.entrySet().iterator();while (iterator.hasNext()) {Map.Entry entry = iterator.next();String key = (String) entry.getKey();String values = (String) entry.getValue();System.out.print("初始化后的map:");System.out.println(key + "=" + values);}}
转载地址:http://rytzi.baihongyu.com/