0
采纳
ArrayList是在JDK1.2的时候才作为Collection framework的一部分引入的. 它们都是在内部用一个Obejct[]来存储元素的
1. 线程安全
Vector是同步的, 而ArrayList不是.
因为Vector是同步的, 所以它是线程安全的.
同样, 因为Vecotr是同步的, 所以他需要额外的开销来维持同步锁
ArrayList用Collection.synchronizedList(List)来得到一个线程安全的List
2. 容量增长
Vector允许用户设置capacityIncrement这样在每次需要扩充数组的size的时候, Vector会尝试按照预先设置的capacityIncrement作为增量来设置, 而ArrayList则会把数组的大小扩大一倍
如果capacityIncrement设为0或者负值, Vector就会做和ArrayList一样, 每次都将数组大小扩大一倍
3. 性能比较
由于Vector是同步的, 而ArrayList不是, 所以Vector的性能要比ArrayList要稍低一点
在一般情况下, 用ArrayList的, 如果你有同步控制的需要, 那就用Vector