为了账号安全,请及时绑定邮箱和手机立即绑定

为啥遍历商品集合的时候又可以用增强for循环?

为啥遍历商品集合的时候又可以用增强for循环?在前面一节获取键的集合的时候又只能用迭代器?求解?

正在回答

4 回答

这个是一样的,最后的结果就是遍历整个集合,你说的前面一节用迭代器,因为set集合实现了Serializable接口,所以可以用迭代器来遍历整个集合,当然你也可以用增强for循环,这都是可以的。

对于你说的,现在遍历商品集合时候用增强·for循环,其实你可以用迭代器,只不过的得到i.next()的类型是Map.Entry<items,number>,其他都是一样的,你可以试一下,祝你好运。

1 回复 有任何疑惑可以回复我~
#1

weiiNice 提问者

非常感谢!
2016-12-26 回复 有任何疑惑可以回复我~

实际的原因是因为HashMAP为无序存放的存储结构,他没有索引一说,只能靠一个键值去查找对应的值,而代码中定义了一个有序的SET,目的就是为了使用索引来更方便的遍历,SET的范型设定为MAP.entry,而MAP.entry其实是一个类型,类似int之类的类型,这个类型就是以键值对的形式存放数据的类型,在hashmap中自带一个叫做entrySet()的方法,就是用于将里面存放的数据转换为这种类型,使他可以放在有序表中,作为表项,然后就可以使用有序表可用的FOR 去遍历索引,所以可以使用增强FOR。

1 回复 有任何疑惑可以回复我~

不用客气


0 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//585fc4180001d93106230475.jpg我试了一下,你看看

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为啥遍历商品集合的时候又可以用增强for循环?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信