LinkedList与其他二者的区别

首先,LinkedList是相对于其他两个最大不同的,因为底层实现就完全不是一种思路。

ArrayList,Vector 的底层实现是扩容数组,而LinkedList的底层实现是双向链表。具体源码解析请看我的这篇博客:

ArrayList和LinkedList的源码解析

tip:由于LinkedList 是双向链表,可以用来代替过时的Stack类.

Vector是线程安全的线性表。

乍一看,ArrayList与Vector并无区别,都是扩容数组实现,但是在Vector的源码中有“synchronized”的存在,所以我们可以说Vector是唯一的线程安全的线性表.

tip:

线程安全的集合有:V!SHE:Vector(ArrayList),StringBuffer(StringBuilder),Hashtable(HashMap),Enumeration

括号内的为对应的线程不安全的版本.一般情况下使用线程不安全的版本,因为线程安全需要付出效率上的代价

Arraylist则是正常的线性表

ArrayList,Vector是扩容线性表,默认容量都为10,扩容方法稍微有些不同。线程不安全.

转载于:https://www.cnblogs.com/guodao/p/9702387.html

ArrayList、LinkedList、Vector的区别。相关推荐

  1. ArrayList,LinkedList,Vector的异同点

    先总结下ArrayList和LinkedList的区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayLi ...

  2. ArrayList, LinkedList, Vector - dudu:史上最详解

    ArrayList, LinkedList, Vector - dudu:史上最详解 我们来比较一下ArrayList, LinkedLIst和Vector它们之间的区别.BZ的JDK版本是1.7.0 ...

  3. ArrayList ,LinkedList,Vector,StringBuilder,StringBuffer ,String,HashMap,LinkedHashMap,TreeMap

    ArrayList ,LinkedList,Vector 区别和联系 从上面的类层次结构图中,我们可以发现他们都实现了List接口,它们使用起来非常相似.区别主要在于它们各自的实现,不同的实现导致了不 ...

  4. ArrayList和Vector的区别

    这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素, ...

  5. java vector arraylist linkedlist用法与区别

    首先,它们是list的实现类,大致说一下vector arraylist linkedlist的区别. 1.线程安全来讲, vector是线程安全,arraylist linkedlist线程不安全. ...

  6. ArrayList 和 Vector 的区别

    ArrayList 和 Vector 的区别是什么? Vector 的方法都是同步的,线程安全:ArrayList 非线程安全,但性能比Vector好 默认初始化容量都是10,Vector 扩容默认会 ...

  7. 一分钟了解ArrayList和Vector的区别

    一.是否是线程安全的 Vector是同步的, 而ArrayList不是. 因为Vector是同步的, 所以它是线程安全的. 同样, 因为Vecotr是同步的, 所以他需要额外的开销来维持同步锁, 所以 ...

  8. Java中ArrayList和Vector的区别

    首先想说的是: Vector是在Collections API之前就已经产生了的, 而ArrayList是在JDK1.2的时候才作为Collection framework的一部分引入的. 它们都是在 ...

  9. Java ArrayList和Vector、LinkedList与ArrayList、数组(Array)和列表集合(ArrayList)的区别...

    ArrayList和Vector的区别 ArrayList与Vector主要从二方面来说. 一.同步性: Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的. ...

  10. ArrayList与LinkedList、Vector的区别 HashMap与HashTable、HashSet的区别

    一.ArrayList 和 LinkedList区别: (1)两者都是线程不安全,都实现了Collection接口. (2)数据结构:ArrayList是基于动态数组的数据结构,LinkedList是 ...

最新文章

  1. maven的pom.xml中repositories的作用
  2. 复旦大学把衣服变成了显示器,能聊天能导航,水洗弯折都不怕
  3. JavaFX中基于表达式的PathTransitions
  4. 012-- mysql的分区和分表
  5. 【渝粤题库】陕西师范大学300006 史学概论
  6. 1. 查询表customer——查询姓名和联系人相同的顾客信息
  7. 埃氏筛_四种形式 ( pass even , bool , char , differently judge )
  8. IE11 For Win7、win2008中文版官方下载地址
  9. 【全】可供选择的软件开源协议的罗列
  10. Win10系列:JavaScript综合实例1
  11. 【AI with ML】第 8 章 :使用 TensorFlow 创建文本
  12. 拷贝原站点有用文章(合并页)
  13. 恐怖系列丨互联网幕后攻防:咳血的独角兽之血腥丛林中的无底线战争
  14. 基于web的在线视频编辑的设计
  15. 机器学习最常用的3种激活函数:Sigmoid、Tanh、Relu
  16. 朝花夕拾《精通CSS》一、HTML CSS 的基础
  17. IDEA默认JDK版本号变成11了
  18. Leetcode刷题——栈与队列
  19. win10支持8t 硬盘_正版Windows 10免费拿解决问题之“硬盘S.A.M.R.T或MBR异常”
  20. 腾讯云服务器安装宝塔面板教程(一键安装图文教程)建站准备

热门文章

  1. iOS物理碰撞、唱吧音频处理、仿淘宝联动效果等源码
  2. 第五章 运输层(UDP和TCP三次握手,四次挥手分析)
  3. markdown--入门
  4. 手动安装huson插件的做法
  5. 阡陌路-车行天下之新手必备手册
  6. 网络测试及故障诊断方法及工具
  7. gva explaination
  8. Stanford 研究领域
  9. what companies will vc invest?
  10. MacBook的mission control的功能