首页 > 其他 > 详细

ArrayList、LinkedList、Vector的区别

时间:2016-05-30 12:43:00      阅读:267      评论:0      收藏:0      [点我收藏+]

1、ArrayList类的继承关系

技术分享

2、LinkedList类的继承关系

技术分享

3、Vector的继承关系

技术分享

4、三者比较

ArrayList LinkedList Vector

1、底层是数组实现,本质上是一个数组,增加删除慢,查询快;

2、线程不安全,不同步;

3、实现可变大小的数组,允许null元素;

4、默认初始容量较小,预计分配量的话,分配一个较大的容量可以减少调整大小的开销;

5、一个可变大小的数组,当更多的元素想要加入到ArrayList中时,其大小将会动态增长,但是这会带来开销。内部元素可以通过get和set访问;

1、底层链表实现;

2、线程不安全,不同步;

3、实现Queue接口;

4、增加和删除元素时比ArrayList有更好地性能,查询弱于ArrayList;

1、底层是用数组实现;

2、线程安全,同步;

3、性能低

4、Vector和ArrayList在更多元素添加进行时请求更多空间,Vector请求双倍,ArrayList请求size增长50%

 

都实现了List接口

 

 

 

 

 

 

 

 

 

技术分享
技术分享

ArrayList、LinkedList、Vector的区别

原文:http://www.cnblogs.com/fankongkong/p/5541799.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!