`
微Smile
  • 浏览: 33158 次
  • 性别: Icon_minigender_2
  • 来自: 湖南
社区版块
存档分类
最新评论

HashMap的三种遍历方法

    博客分类:
  • java
 
阅读更多

HashMap存储的是键值对,可以将key序列和value序列单独抽取出来。

 

HashMap的遍历方法:

 

第一种:抽取出key序列,将map中的所有key生成一个set。

HashMap<Integer,String> map = new HashMap<Integer,String>();
Set<Integer> keys = map.keySet();//返回的是一个set

 然后得到它的迭代器,遍历元素。代码如下:

Iterator<Integer> ite1 = set.iterator();
while(ite1.hasNext()) {
	System.out.println(map.get(ite1.next()).getString);		}

 或者用增强的for循环来遍历:

Iterator<Integer> ite1 = set.iterator();
for(Integer k:keys) {//把所有的键值用k接收
  System.out.println(map.get(k).getString();		
}

 

第二种:

//keySet返回包含键值的视图
Iterator<Integer> ite2 = map.keySet().iterator();
while(ite2.hasNext()) {
	Integer key = ite2.next();//得到键值
	System.out.println(map.get(key).getString());
		}

第三种:

 

//keySet返回包含键值的视图
Iterator<Integer> ite2 = map.keySet().iterator();
	while(ite2.hasNext()) {
		Integer key = ite2.next();//得到键值
		System.out.println(map.get(key).getString());			
		}

 

注意:使用values()抽取value序列,将map中的所有values生成一个Collection。

为什么一个生成Set,一个生成Collection?那是因为,key总是独一无二的,value允许重复。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics