当前位置:首页>维修大全>综合>

arraylist和linkedlist的区别vector(linked list和arraylist区别)

arraylist和linkedlist的区别vector(linked list和arraylist区别)

更新时间:2024-02-14 04:45:58

arraylist和linkedlist的区别vector

ArrayList

1)只能装入引用对象(基本类型要转换为封装类);

2)线程不安全;

3)底层由数组实现(顺序表),因为由顺序表实现,所以会具备顺序表的特点,如:需要声明长度、超出长度时需要进行扩容、不适合频繁的移动删除元素、检索元素快;

4)capacity默认为10,超出时,capacity自动增长0.5倍(oldCapacity >> 1)。

Vector:

1)只能装入引用对象(基本类型要转换为封装类);

2)Vector通过synchronized方法保证线程安全;

3)底层也由数组实现;

4)capacity默认为10(在构造方法中),超出时增长capacityIncrement的量,capacityIncrement小于等于0时,则增长1倍((capacityIncrement > 0) ? capacityIncrement : oldCapacity)。

LinkedList

1)只能装入引用对象(基本类型会转换为封装类);

2)线程不安全;

3)底层实现为链表,具备链表的特点,如:不用声明长度、检索性能较差,但是插入移动删除较快。

4)链表通过Node对象实现。

更多栏目