ArrayList、Vector、LinkedList三者的区别以及使用(面试常问)

相同点

  ArrayList、Vector以及LinkedList都是实现了List接口的集合;

不同点

1、结构

  在结构上来讲,ArrayList和Vector都是数组,而LinkedList是双向链表;

2、安全

  在安全性上来讲,Vector的方法上加了synchronized同步锁,所以是线程安全的,而ArrayList和LinkedList是线程不安全的;

3、效率

  在效率上来讲:
Vector和ArrayList结构上都是数组但是Vector由于是线程安全的所以在效率上是不如ArrayList
ArrayList和LinkedList因为结构上不同,数组是在查找和修改时候效率高,而链表是在插入和删除时候效率高

使用环境

  如果对集合中数据没有大的插入或者删除操作的话,并且对安全性上没有要求的话使用ArrayList,如果对安全性上有要求的话则使用Vector,如果对集合中的数据需要频繁的插入或者删除的话则推荐使用LinkedList

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值