Java-解读

ArrayList的扩容

2019-08-03  本文已影响2人  可爱猪猪

作者:可爱猪猪 - 帅锅一枚
作者的网名很阔爱,如果喜欢本文章一定要点 喜欢 或者 打赏,拜托~
作者一直在进步,需要你们的支持和鼓励,谢谢!
人生理想:在程序猿界混出点名堂!

该文章已经讲的很好了,直接参考。
https://github.com/Snailclimb/JavaGuide/blob/master/docs/java/collection/ArrayList-Grow.md
注意几个要点
1.空构造函数的初始化大小为0的数组
2.非空构造函数初始化化大小为指定大小的数组
3.第一次扩容,如果初始化的数组小于10,则第一次扩容至10
4.每次新增或者插入元素要判断是否需要扩容,如果扩容增加到原来的1.5倍,同时进行数组拷贝,因为需要拷贝,索引建议如果已知LIst大小,尽量先初始化。避免反复扩容
建议采用guava的Lists.newArrayListWithExpectedSize(expectedSize)

上一篇下一篇

猜你喜欢

热点阅读