Java中Vector與ArrayList的區別

ArrayList與Vector的區別主要包括兩個方面:.

線程安全性

Vector是線程安全的,也就是說是它的方法之間是線程同步的,而ArrayList是線程序不安全的,它 的方法之間是線程不同步的。所以如果是多線程訪問的話,最好使用Vector,可以避免編寫保證線程之間安全的代碼。

數據增長

二者都有一個初始容量大小,採用線性連續存儲空間;當Vector或ArrayList中的元素超過它的初始大小時,Vector會將它的容量翻倍,而ArrayList只增加50%的大小,這樣ArrayList就有利於節約內存空間。其中ArrayList與Vector都可以設置初始的空間大小,在使用時如果能確定容量的話,最好指定容量的大小,因爲擴容需要消耗一定的計算資源。其中Vector還可以設置增長的空間大小,而ArrayList沒有提供設置增長空間的方法。

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