ArrayList與Vector之間的區別

ArrayList類與Vector類的區別:

    首先就是出現的先後的不同了,Vector類在jdk1.0的時候就有了,而ArrayList類在jdk1.2纔出現

    其次是擴展大小上的區別,在上一篇文章中提到數組大小擴展的方法,其實集合可以無限制添加對象就是使用了這樣的一種模式,但是這兩個類在每次擴展的大小上是不同的,ArrayList類每次僅擴展了以前數組大小的一半,而Vector類則是擴展了當前數組的一倍,這樣的話當最後一次的擴展Vector類不就佔用了更多的內存空間,所以說在數組大小擴展上ArrayList類是優於Vector類的

    最後區別是在多個線程同時訪問集合,ArrayList類允許多個線程訪問到集合,也就是可以在同一時間對集合進行結構上的修改,它是不同步的,這樣的話線程上就顯現除不安全的一面,但是Vector類就不會出現這樣的情況,它必須在當一個線程操作此集合的時候其他線程是不能訪問到的,這樣就保證了集合的同步性和安全性

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