list接口的实现类:ArrayList

本文探讨了Java 7和8中ArrayList的不同初始化行为:Java 7的‘饿汉式’初始化与Java 8的‘懒汉式’策略,即7创建时容量为10,8在添加时动态调整。理解这些差异有助于优化内存使用和性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

底层结构:可变数组
jdk8:ArrayList中维护了Object[ ] elementData ,初始量为0.第一次添加时,将初始elementData的容量为10
再次添加时,如果容量足够,则不用扩容直接将新元素复制到第一个空位上,如果容量不够,会扩容到1.5倍
jdk7:ArrayList中维护了Object[ ] elementData ,初始量为10 ,添加时,
如果容量足够,则不用扩容直接将新元素复制到第一个空位上,如果容量不够,会扩容到1.5倍。
jdk7和jdk8的区别:
jdk7相当于饿汉式,创建对象时,则初始容量为10
jdk8相当于懒汉式,创建对象时,并没有初始容量为10,而在添加时采取初始容量为10.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值