永发信息网

java中hashset和hashmap有什么区别

答案:4  悬赏:20  手机版
解决时间 2021-04-04 16:45
java中hashset和hashmap有什么区别
最佳答案
HashMap*
*HashSet*

HashMap实现了Map接口
HashSet实现了Set接口

HashMap储存键值对
HashSet仅仅存储对象

使用put()方法将元素放入map中
使用add()方法将元素放入set中

HashMap中使用键对象来计算hashcode值
HashSet使用成员对象来计算hashcode值,对于两个对象来说hashcode可能相同,所以equals()方法用来判断对象的相等性,如果两个对象不同的话,那么返回false

HashMap比较快,因为是使用唯一的键来获取对象
HashSet较HashMap来说比较慢
希望能帮到你
全部回答
map.put("name", "匿名");
set.add("匿名");
set是线性结构,set中的值不能重复,hashset是set的hash实现,hashset中值不能重复是用hashmap的key来实现的。
map是键值对映射,可以空键空值。HashMap是Map接口的hash实现,key的唯一性是通过key值hash值的唯一来确定,value值是则是链表结构。
他们的共同点都是hash算法实现的唯一性,他们都不能持有基本类型,只能持有对象
1、HashSet底层是采用HashMap实现的。HashSet 的实现比较简单,HashSet 的绝大部分方法都是通过调用 HashMap 的方法来实现的,因此 HashSet 和 HashMap 两个集合在实现本质上是相同的。
2、HashMap的key就是放进HashSet中对象,value是Object类型的。
3、当调用HashSet的add方法时,实际上是向HashMap中增加了一行(key-value对),该行的key就是向HashSet增加的那个对象,该行的value就是一个Object类型的常量
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
南京江宁区有哪些工作环境和待遇不错的知名企
出租车司机小李每天下午都在东西走向的大道上
水晶男孩客串的韩剧名字
有什么好的初中作文素材(杂志)?
旧版芈月台词王者荣耀,王者荣耀改版后芈月是
郎昆与王冼平什么时候离婚的有子女吗
无间道怎么读?
QQ浏览器有小窗口功能,但是华为荣耀7想使用
与中秋有关的诗词,与中秋有关的诗词
填空题焦点在直线3x-4y-12=0上,且顶点在原点
‎TeraFX这个觉得如何? ‎近期希望能
1993年农历1月初三是什么金命
普通葡萄酒放二十年能喝吗
求一篇快穿文
潍坊到烟台距离是多少公里
推荐资讯
表格及格率怎么算,EXCEL中优秀率,及格
高温隔热材料是什么材料?
全能神 你全家不得好死。祸害平民老白姓 国家
先早春还是先初春
大头鞋配什么裤子
大于7.6小于7.9的小数有多少
简单的扑克牌的玩法?
求拳皇1.91大蛇表里技能出招表。
用睡着了一样恬静造句
郑州智美人力资源有限公司他是正规公司吗?
办公室吸烟罚款标语,吸烟有害健康的标语
下列关于细胞内化合物的叙述,正确的是A.ATP
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?