ArrayList与Vector的区别主要包括两个方面:.
线程安全性
Vector是线程安全的,也就是说是它的方法之间是线程同步的,而ArrayList是线程序不安全的,它 的方法之间是线程不同步的。所以如果是多线程访问的话,最好使用Vector,可以避免编写保证线程之间安全的代码。
数据增长
二者都有一个初始容量大小,采用线性连续存储空间;当Vector或ArrayList中的元素超过它的初始大小时,Vector会将它的容量翻倍,而ArrayList只增加50%的大小,这样ArrayList就有利于节约内存空间。其中ArrayList与Vector都可以设置初始的空间大小,在使用时如果能确定容量的话,最好指定容量的大小,因为扩容需要消耗一定的计算资源。其中Vector还可以设置增长的空间大小,而ArrayList没有提供设置增长空间的方法。