【JAVA学习】java中怎么遍历HashMap(Iterator迭代器遍历)

 

一、                                                                        

HashMap   staff   =   new   HashMap(); 
添加关键字值对,自己写 
遍历   
Set     entries   =   staff.entrySet(); 
Iterator   iter   =   entries.iterator(); 
while(iter.hasNext()) 

      Map.Entry   entry   =   (Map.Entry)iter.next(); 
      Object   key   =   entry.getKey();得么关键字 
      Object   value   =   entry.getValue();得到值 
}


二、                                                                        
Map map = new HashMap();

for (Iterator iter = map.entrySet().iterator(); iter.hasNext();) {

    Map.Entry entry = (Map.Entry) iter.next();    //map.entry 同时取出键值对

    Object key = entry.getKey();

    Object val = entry.getValue();

}

三、                                                                        

Map map = new HashMap(); 

for (Iterator iter = map.keySet().iterator(); iter.hasNext();) {

    Object key = iter.next();

    Object val = map.get(key);

}

Iterator是迭代器


对于keySet其实是遍历了2次,一次是转为iterator,一次就从hashmap中取出key所对于的value。

而entryset只是遍历了第一次,他把key和value都放到了entry中,所以就快了。


对于我们做web的,可能不部分都是用vo对象或是form封装信息,所以用到hashmap时,其内存放的都是上面的对象。因此使用entryset遍历性能会有所提高。

hashmap使用很多,比如导入信息时就要用到,因大部分导入的信息要去判断是否有重复的信息,这样就可以利用containsKey来进行处理了,而不用在插入的时候去进行处理。

 

 

尊重版权  转自百度空间:情非得已

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值