网站首页 > 资源文章 正文
对比Vector、ArrayList、LinkedList有何区别?
- Vector、ArrayList都是以类似数组的形式存储在内存中,LinkedList则以双向链表的形式进行存储。
- List中的元素有序、允许有重复的元素,Set中的元素无序、不允许有重复元素。
有序或无序是指是否按照其添加的顺序来存储对象。List 是按照元素的添加顺序来存储的。而 Set 的实现类都有一套自己的排序算法,每添加一个元素,都会按照其内部算法将元素添加到合适的位置,所以不能保证内部存储是按元素添加的顺序而存储的。
- Vector线程同步,ArrayList、LinkedList线程不同步。
- LinkedList适合指定位置插入、删除操作,不适合查找;ArrayList、Vector适合查找,不适合指定位置的插入、删除操作。
- ArrayList在元素填满容器时会自动扩充容器大小的50%,而Vector则是100%,因此ArrayList更节省空间。
LinkedList 内部静态类 Node,也就是List 中节点类型:
private static class Node<E> {
E item;
Node<E> next;
Node<E> prev;
Node(Node<E> prev, E element, Node<E> next) {
this.item = element;
this.next = next;
this.prev = prev;
}
}
ArrayList:值可以为null,线程不安全,但是我们可以使用Collections.synchronzedList()方法使得一个ArrayList支持并发。
List<Integer> mySynchronziedArrayList = Collections.synchronizedList(new ArrayList<Integer>());
Vector:本身支持并发。
LinkedList:值可以为null,但是当我们调用时会抛出NullPointerException异常。
猜你喜欢
- 2024-10-29 C++遍历vector元素的四种方式(c++ iterator遍历)
- 2024-10-29 c++vector常用操作及函数(c++ vector常用方法)
- 2024-10-29 Vector冲锋枪:极富科技感的未来军械
- 2024-10-29 绝地求生:汤姆逊或超越M4成玩家最爱?Vector居然加入空投了!
- 2024-10-29 绝地求生Vector(当对面掏出短剑的时候,你已经凉了)
- 2024-10-29 std::vector的用法,删除,添加,更新成员?
- 2024-10-29 C++ Vector类型及使用(c++vector详解)
- 2024-10-29 数据安排与操作方式:vector的扩容操作
- 2024-10-29 C++中的动态内存管理:深入探讨std::vector与指针
- 2024-10-29 vector的底层是如何实现的?#代码(vector的原理)
你 发表评论:
欢迎- 最近发表
-
- 涨知识!电脑键盘上F1到F12的正确用法,你都会用吗?
- Win10《邮件》应用0x80070032错误:已发送邮件不同步
- 微软邮件服务系统出现大规模收发错误 预计24小时内修复
- Outlook365邮箱崩溃,备份邮箱,配置邮箱,还原数据
- Outlook服务瘫痪故障加重 微软遭遇的网络问题开始影响全球用户
- outlook邮箱报错:无法打开此文件夹集合pst文件错误
- 微软确认新版Windows Outlook支持在无互联网的情况下运行
- 用户隐私成隐忧,欧盟封锁微软 Outlook App
- 微软承认 Outlook 存在问题,会导致Exchange Online邮箱配置错误
- 如何在 Outlook 中撤回电子邮件(outlook怎么撤回邮箱)
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)