说出ArrayList,Vector, LinkedList的存储性能和特性?
Posted yanghaitao_1990
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了说出ArrayList,Vector, LinkedList的存储性能和特性?相关的知识,希望对你有一定的参考价值。
ArrayList 采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,所以最大的缺点就是插入删除时非常麻烦
LinkedList 采用的将对象存放在独立的空间中,而且在每个空间中还保存下一个链接的索引 但是缺点就是查找非常麻烦 要丛第一个索引开始
ArrayList和Vector都是用数组方式存储数据,此数组元素数要大于实际的存储空间以便进行元素增加和插入操作,他们都允许直接用序号索引元素,但是插入数据元素涉及到元素移动等内存操作,所以索引数据快而插入数据慢.
Vector使用了sychronized方法(线程安全),所以在性能上比ArrayList要差些.
LinkedList使用双向链表方式存储数据,按序号索引数据需要前向或后向遍历数据,所以索引数据慢,是插入数据时只需要记录前后项即可,所以插入的速度快.
arraylist和vector的区别?
1).同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程不安全的,不是同步的
2).数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半
以上是关于说出ArrayList,Vector, LinkedList的存储性能和特性?的主要内容,如果未能解决你的问题,请参考以下文章
说出ArrayList,Vector, LinkedList的存储性能和特性?
说出几点 Java 中使用 Collections 的最佳实践?