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

ArrayList

采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,所以最大的缺点就是插入或删除时非常麻烦。

LinkedList

采用的是将对象存放在独立的空间中,而且在每个空间中还保存下一个链接的索引,但缺点就是查找非常麻烦,要从第一个索引开始。

  • ArrayList和Vector都是用数组方式存储数据,此数组元素数要大于实际的存储空间以便进行元素增加和插入操作,他们都允许直接用序号索引元素,但是插入数据元素涉及到元素移动等内存操作,所以索引数据快而插入数据慢。

  • Vector使用了sychronized方法(线程安全),所以在性能上比ArrayList要差些。

  • LinkedList使用双向链表方式存储数据,按序号索引数据需要前向或后向遍历数据,所以索引数据慢,是插入数据时只需要记录前后项即可,所以插入的速度快。

最新文章

  1. Qt:正则表达式语法:
  2. mysql连接查询和子查询
  3. WPF之依赖属性
  4. java web(一) 使用sql标签库+tomcat+mysql手动创建一个jsp练习总结
  5. [leetcode]_Binary Tree Inorder Traversal
  6. Android ActionBar标题和渐变背景
  7. PHPExcel 导出
  8. Flask web应用
  9. GTK+2.0学习——C指针回顾
  10. Gentoo 无线网络配置 wpa_supplicant
  11. Python内置函数(16)——ord
  12. [C#] .NET Core/Standard 2.0 编译时报“CS0579: Duplicate 'AssemblyFileVersionAttribute' attribute”错误的解决办法
  13. 关于C语言程序条件编译的简单使用方法
  14. 用php过滤文字中的表情字符
  15. JUC中AQS简介
  16. https 加密、http2.0、keep-alive
  17. EXCEL查找函数之VLOOKUP,LOOKUP,HLOOKUP
  18. [leetcode]1007. 行相等的最少多米诺旋转
  19. Java之线程池深度剖析
  20. transclude

热门文章

  1. linux sed 替换,使用变量,变量中含有特殊字符的处理
  2. p4841 城市规划
  3. malloc(50) 内存泄露 内存溢出 memory leak会最终会导致out of memory
  4. OKHttp3 简介与使用
  5. Visual Studio Code - 在 JS 源码(TS、压缩前代码)上使用断点
  6. lateral view 使用方法
  7. C++笔记(5)——浮点数的比较
  8. 数论-欧拉函数-LightOJ - 1370
  9. python基础-7模块,第三方模块安装方法,使用方法。sys.path os sys time datetime hashlib pickle json requests xml
  10. [Git] 008 status 与 commit 命令的补充