Java 杂谈

JDK 1.8 HashMap 使用指导

2018-07-17  本文已影响11人  阿波罗程序猿
  1. 尽量不要修改负载因子。负载因子默认为0.75。太高会减少空间成本,但会增加查找的时间成本。太低会增加空间成本,但会减少查找的时间成本。默认值设定为0.75是取了一个平衡点,建议不要随意修改。

  2. 尽量初始化时预估HashMap的容量。因为resize扩容是很浪费性能的,resize时会把旧数组中的节点全部转移到新的数组中,中间会重新计算节点所在数组的位置。节点要么在原位置上,要么在原位置+oldCap上。

  3. 不要在并发时使用HashMap,可以用Collections.synchronizedMap()或者使用ConcurrentHashMap

上一篇 下一篇

猜你喜欢

热点阅读