HashMap的三种遍历方法

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允许重复。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值