vector和arraylist的区别面试题(教你保证多线程顺序执行)

使用方式

vector和arraylist的区别面试题(教你保证多线程顺序执行)

共同点:

他们都实现了 List 接口(List 接口继承了 Collection 接口),他们都是有序集合.

不同点:

线程安全:

Vector 使用了 Synchronized 实现线程同步,是线程安全的.

vector和arraylist的区别面试题(教你保证多线程顺序执行)

ArrayList 是非线程安全的。

vector和arraylist的区别面试题(教你保证多线程顺序执行)

性能:

ArrayList 在性能方面要优于 Vector.

扩容:

ArrayList 和 Vector 都会根据实际的需要动态地调整容量,只不过在 Vector 扩容每次会增加 1 倍,而 ArrayList 只会增加 50%。Vector在创建时可以自己指定扩容的大小,ArrayList不可以.

下面是ArrayList的扩容方式:

vector和arraylist的区别面试题(教你保证多线程顺序执行)

Vector在创建时可以自己指定扩容每次扩容时增加的大小

vector和arraylist的区别面试题(教你保证多线程顺序执行)

Vector扩容:

vector和arraylist的区别面试题(教你保证多线程顺序执行)

原创文章,作者:admin,如若转载,请注明出处:https://www.qq65hfghe5.com/tg/61708.html