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