List接口中常用实现类的对比[java]

List接口中常用实现类的对比:

List接口中的三个常用实现类(ArrayList,LinkedList,Vector)的异同:

相同:

  1. 这三个类都继承了List接口
  2. 这三个类中存储的数据的特征相同:都是存储有序的,可重复的数据

差异:

  1. ArrayList类作为List接口的主要实现类 : 线程不安全的,效率高,底层是通过Object[] elementDate进行存储的
  2. LinkedList类 : 底层使用双向链表进行存储,如果要对集合中的数据进行频繁的插入和删除操作时使用此类创建对象来容纳数据的效率要比使用ArrayList集合的效率高
  3. 作为List接口的古老实现类,vector类比List接口还要古老(List接口是jdk1.2中出现的,但是我们的vector类在我们的jdk1.0中就出现了),只不过当List接口出现以后java官方将vector类也归到了List接口中,我们的Vector类是线程安全的,效率低,底层也是通过Object[] elementDate进行存储的

总结:

  • List接口中存储的数据时有序的,不可重复的
  • ArrayList类底层的Object数组名为elementDate
  • Vector类底层的Object数组名为elementDate
  • String,StringBuffer,StringBuilder类底层的数组名都为value
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值