Vector、ArrayList、LinkedList 的存储性能和特性?

  • ArrayList 和 Vector 都是使用数组存储数据
  • 允许直接按序号索引元素
  • 插入元素涉及数组扩容、元素移动等内存操作
  • 根据下标找元素快,存在扩容的情况下插入慢
  • Vector 对元素的操作,使用了 synchronized 方法,性能比 ArrayList 差
  • Vector 属于遗留容器,早期的 JDK 中使用的容器
  • LinkedList 使用双向链表存储元素
  • LinkedList 按序号查找元素,需要进行前向或后向遍历,所以按下标查找元素,效率较低
  • LinkedList 非线程安全
  • LinkedList 使用的链式存储方式与数组的连续存储方式相比,对内存的利用率更高
  • LinkedList 插入数据时只需要移动指针即可,所以插入速度较快

  

来一道刷了进BAT的面试题?

原文地址:https://www.cnblogs.com/ConstXiong/p/11921564.html