ArrayList與Vector的區別主要包括兩個方面:.
線程安全性
Vector是線程安全的,也就是說是它的方法之間是線程同步的,而ArrayList是線程序不安全的,它 的方法之間是線程不同步的。所以如果是多線程訪問的話,最好使用Vector,可以避免編寫保證線程之間安全的代碼。
數據增長
二者都有一個初始容量大小,採用線性連續存儲空間;當Vector或ArrayList中的元素超過它的初始大小時,Vector會將它的容量翻倍,而ArrayList只增加50%的大小,這樣ArrayList就有利於節約內存空間。其中ArrayList與Vector都可以設置初始的空間大小,在使用時如果能確定容量的話,最好指定容量的大小,因爲擴容需要消耗一定的計算資源。其中Vector還可以設置增長的空間大小,而ArrayList沒有提供設置增長空間的方法。