浅谈 Hashtable 的遍历

以前并没有在意Hashtable的遍历问题 今天遇到了个问题值得注意!

先说说遍历方法

HashMap遍历的两种方式:

第一种:

Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey(); Object val = entry.getValue(); }

效率高,推荐使用此种方式!

第二种:

Map map = new HashMap(); Iterator iter = map.keySet().iterator(); while (iter.hasNext()) { Object key = iter.next(); Object val = map.get(key); }


效率低比第一种要低,不推荐使用!

而在J2ME中是行不通的iterator就悲剧了

没怎么考虑直接 for Hashtable 的 size 然后遍历!

问题出来了 debug 的时候 明明是7 然后size就是3,查看元素

里面null 的size不计数

所以只能改策略了!

Enumeration e = table.elements(); while (e.hasMoreElements()){ ORPlayer _p = (ORPlayer)e.nextElement(); }

搞定了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值