HashSet内部使用hashmap实现,那么为什么hashmap比hashset更快?

dex*_*ish 3 java

HashSet内部使用hashmap实现,那么为什么hashmap比hashset更快?

我尝试在搜索中阅读上述帖子,但无法找到明确的答案

Jam*_*mes 10

因为HashSet使用HashMap.它必须承担使用HashMap的成本,加上HashSet本身的开销.

  • 为了澄清上述内容,`Set`实现`Collection`,`Map`没有.因此,`HashSet`必须保持对元素的一些可迭代引用.它使用`Map`来检查是否存在,但仍然必须将元素添加到iterable集合中. (2认同)