vector,arraylist, linkedlist的区别是什么

时间:2023-12-10 13:17:44

LinkedList类

LinkedList实现了List接口,允许null元素。
此外LinkedList提供额外的get,remove,insert方法在LinkedList的首部或尾部。
LinkedList不是同步的(不是线程安全)。
实现线程安全:List list =
Collections.synchronizedList(new LinkedList(...));
增删快,查询慢。
ArrayList类
  ArrayList实现了可变大小的数组。它允许null
ArrayList没有同步。
增删慢,查询快。
Vector类
  Vector线程安全。 效率低
关于ArrayList和Vector区别如下:
1.ArrayList在内存不够时默认是扩展50%
+ 1个,Vector是默认扩展1倍。
2.Vector提供indexOf(obj,
start)接口,ArrayList没有。
3.Vector属于线程安全级别的,但是大多数情况下不使用Vector,因为线程安全需要更大的系统开销。