码迷,mamicode.com
首页 > 其他好文 > 详细

HashMap和HashSet的区别?

时间:2019-01-11 17:13:43      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:判断   als   shc   存储   直接   set   元素   键值   add   

HashSet底层是基于HashMap实现的。HashSet的源码非常少,因为除了clone()方法、writeObject()方法、readObject()方法是HashSet自己实现的,其他方法都是直接调用HashMap中的方法。

HashSet和HashMap对比

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

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

3、HashSet调用add()方法向Set中添加元素、HashMap调用put()方法向map中添加元素

4、HashSet使用成员对象的计算hashcode值、对于两个对象来说hashcode值可能相等,所以使用equals()方法来判断对象的相等性。HashMap  使用键key计算hashcode

5、HashSet较HashMap来说比较慢,HashMap比较快,因为是使用唯一的键来获取对象。

HashMap和HashSet的区别?

标签:判断   als   shc   存储   直接   set   元素   键值   add   

原文地址:https://www.cnblogs.com/wylwyl/p/10255597.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!