1. 程式人生 > >Vector與ArrayList

Vector與ArrayList

集合 一個 body 數據 順序 tor 存儲 div 結構

Vector與ArrayList都是采用數組的方式實現,ArrayList進行擴容時總是擴容為原來的1.5倍,Vector中如果increaseCapacitry大於0,則擴容+increaseCapacity.Vector唯一的好處就是線程安全的,但是Java提供了一個工具類Collections,通過該工具類synchronizedList方法即可將一個普通arrayList包裝成線程安全的ArrayList.

List代表一種線性表的數據結構,ArrayList則是一種順序存儲的線性表。ArrayList底層采用數組來保存每個集合元素,LinkedList則是一種鏈式存儲的線性表,其本質上就是一個雙向鏈表,但它不僅實現了List接口,還實現了Deque接口,也就是說LinkedList既可以當雙向鏈表使用也是當成隊列使用,還可以當成棧來使用(Deque代表雙端隊列,既具有隊列的特征,也具有棧的特征)。

Vector與ArrayList