ArrayList源码+扩容机制分析

学习来自:
https://github.com/Snailclimb/JavaGuide/blob/master/docs/java/collection/ArrayList源码+扩容机制分析.md
十分感谢!!

ArrayList简介

Arraylist 和 Vector 的区别?

Arraylist 与 LinkedList 区别?


小总结:
1.都没有保证线程安全
2.ArrayList底层使用Object数组,LinkedList底层使用双向链表 所以后续两者的特点 不同点其实就是数组链表的特点不同点

ArrayList 核心源码解读

太长了! 具体可去上面连接看 就不贴自己博客里了

一步一步分析 ArrayList 扩容机制



grow方法 扩容背后的算法


System.arraycopy() 和 Arrays.copyOf()方法

ensureCapacity方法

通过源码分析 最后可以得知如果我们需要大量的添加数据的话 就最好使用该方法提高性能

posted @ 2021-09-07 09:10  offlineboy  阅读(87)  评论(0)    收藏  举报