HashMap的文档包含以下语句:
因此,如果迭代性能很重要,则不要将初始容量设置得太高(或负载因子太低),这一点非常重要。
有人可以解释一下吗。我没有看到任何更改或影响 HashMap 的负载因子的方法
HashMap的文档包含以下语句:
因此,如果迭代性能很重要,则不要将初始容量设置得太高(或负载因子太低),这一点非常重要。
有人可以解释一下吗。我没有看到任何更改或影响 HashMap 的负载因子的方法
太大的初始容量和太低的负载因子都会导致哈希表中的大多数条目是空的。虽然这降低了冲突的几率(从而提高了平均查找性能),但迭代哈希表的键/值/项需要跳过更多的空槽。
正如其他人所解释的,您可以在构造哈希表对象时给出负载因子和初始容量。
哈希表背后有很多理论,什么使给定输入集预测的“好”哈希表,我将从Wikipedia 文章开始(特别是在链接的“负载因子”部分)。