Map,HashMap,entrySet,Entry,Set,5个之间的关系?
Map是接口,,HashMap是Map的实现类,entrySet是Map的抽象方法即HashMap的具体实现方法
这三个都没问题,但以前的同学其实最难理解的是 Set,Entry和另外3个之间的关系,老师们一直没回答清楚??
个人理解:entrySet方法返回Set接口对象,这个对象里面存着 Entry 这种自定义的数据(结构) 为 <String,String>
问题 Set是一个接口,接口里面只能存 常量和抽象方法,,请问它返回对象后里面所存的数据为什么能改变?? Set对象里面不是存的常量吗?? 为什么还能存 Entry 这种如同变量的数据结构 <String,String>
请务必详细回答,这5个东西之间的关系很多同学都搞不懂,请不要含糊不清企图蒙混过关,谢谢!
正在回答
同学你好,
1、Map中存放的元素均为键值对,每一个键值对存在一个映射关系。Map中采用Entry来表示一个映射项,映射项包含Key和Value。Map.Entry里面包含getKey()和getValue()方法。
如下:
2、Set是一个泛型接口,使用Set时可以指定存储的数据类型。Set里面存储的是对象,不能存储常量和抽象方法。
Set<Entry<K,V>> entrySet()方法是将map集合中的映射关系取出(这个关系是Map.Entry类型)。该方法返回值就是map中各个键值对映射关系的Set集合。
如下:
祝:学习愉快~
- 参与学习 人
- 提交作业 9393 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星