HashMap和HashSet的区别?

Posted wylwyl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HashMap和HashSet的区别?相关的知识,希望对你有一定的参考价值。

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的区别?的主要内容,如果未能解决你的问题,请参考以下文章

HashMap和HashSet的区别

HashMap和HashSet的区别?

Java集合 -- ArrayList 的扩容机制HashMap 和 Hashtable的区别HashMap 和 HashSet区别HashSet如何检查重复

HashSet和HashMap的区别

java---Hashset与Hashmap的区别

Java中HashSet,HashMap和HashTable的区别(转)