vector與ArrayList的區別

Vector類稱作向量類,它實現了動態數組,是可以實現自動增長的對象數組

Vector 與 ArrayList的區別

相同點:底層數據結構相同,都是Object類型的數組

不同點:

1、Vector的add()方法是同步(synchroniszed)方法,ArrayList的add()方法是非同步方法

2、Vector是在調用構造方法(創建對象)時,直接初始化容量爲10,ArrayList是在第 一次調用添加(add)方法時,初始化容量爲10

3、Vector擴容每次擴容1倍,ArrayList每次擴充0.5倍

4、Vector的版本是JDK1.0 ArrayList是JDK1.2版

5、Vector是線程同步的,安全性高 ,效率低;ArrayList是線程非同步的,安全性低,效率高。

 

ArrayList和Vector功能類似。
整體上ArrayList是Vector的“裸奔新版”
Vector從Java 1.0起就存在,ArrayList從Java 1.2起才存在,較新。
所以Vector在JavaME、Card等各種微小版本都可以使用,而ArrayList不能
ArrayList不具備線程同步的安全性,但速度較快,所以叫裸奔。
Vector具備線程安全。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章