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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨胜男 中级黑马   /  2014-6-10 18:39  /  646 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Set<Map.Entry<k,v>>
entrySet:将map集合中的映射关系存入到了set集合中,而这个关系的数据类型就是:Map.Entry

<Map.Entry<k,v>> 是什么?感觉好抽象

3 个回复

正序浏览
<>里面写的都是数据类型。Map.Entry<k,v>可以看成一种“数据类型”。

Map<String,Integer> map = new HashMap<String, Integer>();
map.put("a", 1);
//通过调用Map的方法entrySet()获取Entry类型对象,将获取到的Entry类型对象,存储到了Set集合,我们拿到的是存储键值对关系的对象(Entry)的Set集合。然后赋值给Set<Map.Entry<K,V>> 创建的集合。
Set<Map.Entry<String,Integer>> set = map.entrySet();
//迭代集合
Iterator<Map.Entry<String, Integer>> it = set.iterator();

        while(it.hasNext()){
                                   //it.next()返回值,是Map.Entry
                Map.Entry<String, Integer> me = it.next();
                System.out.println(me.getKey()+".."+me.getValue());}
回复 使用道具 举报
set集合里面应该存放这Map.Entry<k,v>类型的对象,可以通过Entry的方法做相应的操作。
回复 使用道具 举报
我觉得,Map是一个接口,Entry是Map接口的一个内部静态接口,通过Map调用Entry,Map.Entry中存的是映射关系这种数据类型。<k,v>泛型其中K指的是key—键,V指的是value—值。Set<Map.Entry<k,v>>中,Set的泛型也就为键值对应关系。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马