实现接口
HashMap实现了Map接口,HashSet实现了Set接口。HashMap中使用put()将元素加入map中,而HashSet使用add()将元素放入set中。
存储方式
HashMap用于存储键值对,而HashSet用于存储对象。HashMap允许有一个键为空,多个值为空,HashSet允许有一个空值。
元素唯一性
HashMap不允许有重复的键,可以允许有重复的值。HashSet不允许有重复元素。
底层数据结构
HashMap是一种基于哈希表实现,底层是数组和链表或红黑树来存储和检索,HashSet也是基于哈希表实现的,但只存储键,不存储值。
性能表现
HashMap适用于通过键来获取值得场景,而HashSet适用于需要存储唯一元素的场景。
HashMap比较快,因为其使用唯一的键来获取对象。
HashSet只能迭代所有的元素。