小编use*_*235的帖子

使用迭代器循环遍历 HashMap 不会因 if 条件而停止

AHashMap<Integer, Integer>有 10 个条目,但我只想打印 3 个条目。

代码:

HashMap<Integer,Integer> hm = new HashMap<Integer,Integer>();
hm.put(2, 1);
hm.put(5, 3);
hm.put(7, 2);
hm.put(4, 1);
hm.put(6, 3);
hm.put(8, 2);
hm.put(9, 1);
hm.put(3, 3);
hm.put(1, 2);       
hm.put(0, 2);
Iterator <Map.Entry<Integer, Integer>> itr = hm.entrySet().iterator();
int n=4;
int i=0;
while(itr.hasNext()){
    if(i<n){
        Map.Entry<Integer, Integer> entry = itr.next();
        System.out.println(entry.getKey()+" repeated "+entry.getValue());
    }
    i++;
}
Run Code Online (Sandbox Code Playgroud)

输出

0 repeated 2
1 repeated 2
2 repeated 1
3 repeated 3 //program will wait for 2 or 3 seconds here
4 …
Run Code Online (Sandbox Code Playgroud)

java iterator if-statement hashmap while-loop

2
推荐指数
1
解决办法
121
查看次数

标签 统计

hashmap ×1

if-statement ×1

iterator ×1

java ×1

while-loop ×1