当前位置:主页 > 查看内容

HashMap的负载因子初始值为什么是0.75?这篇文章告诉你答案

发布时间:2021-05-06 00:00| 位朋友查看

简介:之前写过一篇专门介绍HashMap的文章,反响很不错,不过在留言区问的最多的问题就是HashMap的负载因子初始值为什么是0.75,私下又好好地研究了一番,总结了这篇文章。 本篇文章基于JDK1.8,特在此说明。 OK。下面我们就开始进行分析。 一、负载因子的作用 对……

 

之前写过一篇专门介绍HashMap的文章,反响很不错,不过在留言区问的最多的问题就是HashMap的负载因子初始值为什么是0.75,私下又好好地研究了一番,总结了这篇文章。

本篇文章基于JDK1.8,特在此说明。

OK。下面我们就开始进行分析。

一、负载因子的作用

对于HashMap的研究,我之前一直停留在考虑源码是如何实现的,现在当我重新再来看的时候,才发现,系统默认的各种参数值,才是HashMap的精华所在。

负载因子是和扩容机制有关的,意思是如果当前容器的容量,达到了我们设定的最大值,就要开始执行扩容操作。举个例子来解释,避免小白听不懂:

比如说当前的容器容量是16,负载因子是0.75,16*0.75=12,也就是说,当容量达到了12的时候就会进行扩容操作。

他的作用很简单,相当于是一个扩容机制的阈值。当超过了这个阈值,就会触发扩容机制。HashMap源码已经为我们默认指定了负载因子是0.75。

HashMap的负载因子初始值为什么是0.75?这篇文章告诉你答案


本文转载自网络,原文链接:https://m.toutiaocdn.com/group/6783537763972022797/?app=news_article×tamp=1581501656&req_id=20200212180055010014047036111E6219&group_id=6783537763972022797&tt_from=weixin&utm_source=weixin&utm_me
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:选择正确人工智能数据存储的6个准则 下一篇:没有了

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐