黑马程序员技术交流社区

标题: 迭代器对map list set 都有用吗? [打印本页]

作者: gm1314    时间: 2014-8-6 21:53
标题: 迭代器对map list set 都有用吗?
本帖最后由 gm1314 于 2014-8-7 07:04 编辑

我用的对list没用
作者: zeus00456    时间: 2014-8-6 21:58
你确定一定以及肯定?
迭代器就对Map没用,因为Map必须先提取键或键值关系装进Set集合,然后对set用迭代器。
list和set都可以用迭代器
作者: gm1314    时间: 2014-8-6 22:00
zeus00456 发表于 2014-8-6 21:58
你确定一定以及肯定?
迭代器就对Map没用,因为Map必须先提取键或键值关系装进Set集合,然后对set用迭代器。 ...

对map有用吧,我看的视频是取出的map的key值,然后通过key再去map里的数据
作者: zeus00456    时间: 2014-8-6 22:38
gm1314 发表于 2014-8-6 22:00
对map有用吧,我看的视频是取出的map的key值,然后通过key再去map里的数据

确实是这样,但是你取出了键后会把键装进一个Set中,成为一个键集,这是keySet方法
而entrySet是将键值对应关系一条条的抽出来装进一个Set,成为一个键值关系集
而最后,你迭代的都是Set,而不是Map本身

或者,说成“迭代不能直接对Map进行操作”更准确与容易理解一些。
作者: gm1314    时间: 2014-8-7 07:03
zeus00456 发表于 2014-8-6 22:38
确实是这样,但是你取出了键后会把键装进一个Set中,成为一个键集,这是keySet方法
而entrySet是将键值对 ...

很详细 理解了 灰常感谢
作者: 阿温    时间: 2014-8-7 08:06
围观............................
作者: iefegend    时间: 2014-8-16 09:58
大家说的都很对,Set的底层是用Map去实现的,所以没必要区分的那么细致嘛,知道原理和会使用就可以了嘛:)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2