ArrayList:
- 初始大小:10
- 自动扩容:(oldSize*3) / 2 + 1
- size方法返回的大小与数组的长度不一定相同
- 底层实现:数组,查询快、修改、插入、删除慢
- 线程不安全,效率高
LinkedList:
- 线程不安全,效率高
- 底层实现 :链表(双向循环),查询慢,修改、删除、插入快
- size方法返回的是链表的长度
Vector:
- 初始大小:10
- 自动扩容:如有设置自增量,则自动扩大自增量,否则扩大原大小的一倍
- size方法返回的大小与数组的长度不一定相同
- 底层实现:数组,查询快、修改、插入、删除慢
- 线程安全,效率低
本文深入探讨了Java集合框架中的ArrayList、LinkedList和Vector的区别,包括它们的初始化大小、自动扩容策略、底层实现方式以及线程安全特性。通过对比,帮助开发者选择最适合需求的数据结构。
1626

被折叠的 条评论
为什么被折叠?



