博客
关于我
HashMap和ArrayList初始大小和扩容后的大小
阅读量:287 次
发布时间:2019-03-03

本文共 352 字,大约阅读时间需要 1 分钟。

创建HashMap对象默认情况下,数组大小为16。

开始扩容的大小=原来的数组大小*loadFactor。

扩容后大小是原来的2倍,其中加载因子loadFactor的默认值为0.75,这个参数可以再创建对象时在构造方法中指定。

例如:

16*0.75=12,默认创建一个map对象数组大小是16,当map添加12个元素到的时候就发生扩容,创建新的数组的大小2*16=32,然后重新计算每个元素在新数组中的位置,而这是一个非常消耗性能的操作,所以如果我们已经预知HashMap中元素的个数,那么预设元素的个数能够有效的提高HashMap的性能。

 

 

 

 

ArrayList:线程不安全,查询速度快

底层数据结构是数组结构

扩容增量:原容量的 0.5倍+1

如 ArrayList的容量为10,一次扩容后是容量为16

转载地址:http://barl.baihongyu.com/

你可能感兴趣的文章
2018年年终总结
查看>>
解决checkbox未选中不传递value的多种方法
查看>>
【pgsql-参数详解1】PostgreSQL默认参数值
查看>>
PostgreSQL11-Hash哈希分区数量的设定标准
查看>>
HTTP协议(1)_入门的一些教程和资源
查看>>
如何利用Hbuilder真机调试安卓手机【小米、华为】
查看>>
2021年春季ACM训练赛第3场
查看>>
Go-编码规范(注释,变量名等基本规则)
查看>>
Go-常用命令go的使用(build、env、run、fmt等)
查看>>
钉钉登录及常用的URL及IP
查看>>
钉钉IP及域名列表
查看>>
CENTOS 删除nginx
查看>>
【redis键过期删除策略】很高兴再次认识你
查看>>
【工具篇】EasyExcel的应用
查看>>
SSM发送手机验证码——以网建SMS为例
查看>>
大范围卫星影像快速处理
查看>>
监控264后缀文件播放
查看>>
Java并发编程笔记-思维导图
查看>>
网站在线偷拍照片源码
查看>>
Thinkphp6.0+vue个人虚拟物品发卡网站源码
查看>>