ArrayList、Vector和LinkedList的区别
来源:互联网 发布:mac电子书导入kindle 编辑:程序博客网 时间:2024/05/18 22:56
实现方式
ArrayList,Vector 是基于数组的实现。
LinkedList 是基于链表的实现。
同步
- ArrayList,LinkedList 不是线程安全的。
- Vector 是线程安全的,实现方式是在方法中加 synchronized 进行限定。
性能消耗
- ArrayList和Vector由于是基于数组实现,所以在指定位置插入和删除时间复杂度为O(n),还可能出现扩容问题,这比较消耗性能。
- LinkedList不会出现扩容问题,适合增删操作;查找元素需要遍历链表,时间复杂度为O(n)。
使用场景
- 快速插入、删除元素,使用LinkedList
- 快速随机访问元素,使用ArrayList
- 单线程,使用List,比如ArrayList
- 多线程,使用Vector
阅读全文
0 0
- ArrayList和Vector和LinkedList的区别
- ArrayList,LinkedList,Vector的关系和区别
- ArrayList Vector LinkedList 的区别和用法
- Vector、ArrayList和LinkedList的区别
- ArrayList,LinkedList,Vector的关系和区别
- ArrayList、LinkedList和Vector 的区别
- arrayList 和 LinkedList ,Vector 的区别
- ArrayList、LinkedList和Vector的区别
- ArrayList,Vector和LinkedList的区别
- Vector,ArrayList,LinkedList的特点和区别
- LinkedList、ArrayList和Vector的区别
- LinkedList、ArrayList、 Vector的区别和详解
- ArrayList和LinkedList、Vector的区别?
- ArrayList、Vector和LinkedList的区别
- vector和arrayList,LinkedList区别
- vector和arrayList,LinkedList区别
- Vector, ArrayList和LinkedList区别
- ArrayList、Vector和LinkedList区别
- sublime3上安装Emmet插件
- Nginx--负载均衡
- websocket学习
- Linux常用命令
- com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'id' in 'order clause'
- ArrayList、Vector和LinkedList的区别
- 在eclipse搭建python开发环境
- 四、ValueAnimator属性动画高级进阶(一)
- 使用Xshell远程访问linux
- BadUSB
- 单进程非阻塞服务器
- 堆 算法实现
- http消息状态码
- 移植QT5.6到嵌入式开发板(史上最详细的QT移植教程)