【问题标题】:HASHMAP - threshold and loadfactor & capacityHASHMAP - 阈值和负载因子和容量
【发布时间】:2018-11-03 21:11:14
【问题描述】:

我一直被告知,hashmap 将在 map 的大小 > loadfactor * 容量时重新调整大小,就像 JDK cmets 对 threshold 所说的那样:

但是看了JDK8中HashMap的源码后,像put方法:

地图在下一个大小时调整大小> 阈值和阈值 = 容量的幂,而不是容量 * 首次放置操作的负载因子。即使在调整大小期间,阈值也只是旧阈值的两倍,而不是新容量 * 负载因子。

JDK 文档有什么不匹配的地方吗?或者也许我完全误解了。有大佬帮忙给点建议吗?

【问题讨论】:

  • 你读过构造函数
  • 是的。它在没有负载因子的情况下将参数容量的功率分配给阈值

标签: java hashmap


【解决方案1】:

因为新容量是旧容量的两倍

【讨论】:

  • 嗯...我看不出旧容量的两倍与负载率之间有任何关系。
猜你喜欢
  • 2013-08-27
  • 2010-11-22
  • 2011-10-30
  • 1970-01-01
  • 2015-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-21
相关资源
最近更新 更多