JAVA中Map类对象如何实现遍历
Posted JC97
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中Map类对象如何实现遍历相关的知识,希望对你有一定的参考价值。
由于JAVA中Map类是不继承Iterable接口,所以不能像其他Collection 数据结构那样,通过迭代器进行遍历;那么Map<K,V>类对象如何实现遍历呢?
我们先看JDK中怎么介绍,后面写代码说明;
JDK文档中,其意大致就是通过Map.Entry<K,V> 接口,通过创建一个存储“键值对” 的Set 来接收entrySet()方法返回的Map对象的键值对视图,而Set<>是继承Iterable接口的,我们便可以通过foreach 来实现遍历:
举例:
private boolean canGenerate(Map<Character, Integer> cmp, Map<Character, Integer> map) { Set<Map.Entry<Character,Integer>> entries = cmp.entrySet(); for(Map.Entry<Character,Integer> entry : entries){ Character c = entry.getKey(); int cnt = entry.getValue(); if(!map.containsKey(c)||map.get(c)<cnt) return false; } return true; }
以上是关于JAVA中Map类对象如何实现遍历的主要内容,如果未能解决你的问题,请参考以下文章