A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王光保 黑马帝   /  2011-7-17 15:31  /  3996 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

大家都知道Map接口中所有的数据是以Key->Value的形式保持的,但是为什么又要把它保存到Map.Entry接口的实例化对象。不是很理解,也不知道是怎么实现的。

评分

参与人数 1技术分 +1 收起 理由
admin + 1 不懂就问,很不错!

查看全部评分

3 个回复

倒序浏览
黑马网友  发表于 2011-7-17 15:59:17
沙发
从Map中取得Key,然后我们还是必须返回Map得到对应Value。Map.Entry实例对象集提供了一个getKey方法和一个getValue方法,不用再返回Map了,省了很多类似于对Map进行get这样的操作。
回复 使用道具 举报
黑马网友  发表于 2011-7-17 16:12:13
藤椅
Map.Entry是使用static关键字声明的内部接口,此接口可以由外部通过"外部类.内部类"的形式直接调用
在Map的操作中,所有的内容都是通过key→value的形式保存数据的,那么对于集合来讲,实际上是将key→value的数据保存在了Map.Entry的实例之后,再在Map集合中插入的是一个Map.Entry的实例化对象
回复 使用道具 举报
Map 接口提供三种collection 视图,允许以键集(Set<K>)、值集(Collection<V>)或键-值映射关系集(Set<Map.Entry<K,V>>)的形式查看某个映射的内容。
分别通过Map的三个方法keySet(),values()和entrySet()方法返回;
而Map.Entry<K,T>又可以通过getKey()和getValue()方法分别获取键和值
[ 本帖最后由 BlackHorse 于 2011-07-17  18:06 编辑 ]
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马