1 import java.util.HashMap;
2 import java.util.Iterator;
3 import java.util.Set;
4
5 public class DemoClass4iterator {
6 public static void main(String[] args) {
7 //TODP 迭代器 iterator
8 //可以实现在遍历的过程中删除集合里的数据,但系统不报错误,
9 //而其他例如:for循环 在遍历过程中删除集合,程序会报错误
10
11 HashMap<String, Integer> map = new HashMap<>();
12 map.put("p1", 1000);
13 map.put("p2", 2000);
14 map.put("p3", 3000);
15 map.put("p4", 4000);
16 System.out.println(map);
17
18 //用迭代器
19 //1. 先获取所有的key值
20 Set<String> keys = map.keySet();
21
22 //2.迭代器
23 Iterator<String> iterator = keys.iterator();
24 //hasNext 判断是否存在下一个值
25 while (iterator.hasNext()) {
26 //获取下一条数据
27 String key = iterator.next();
28 if("p2".equals(key)){
29 //值当前数据p2 进行删除操作
30 iterator.remove();
31 }
32 System.out.println(map.get(key));
33 }
34 /*
35 * 输出结果:
36 1000
37 null
38 3000
39 4000
40 * */
41 }
42 }