他们都实现了 List 接口(List 接口继承了 Collection 接口),他们都是有序集合.
不同点:线程安全:
Vector 使用了 Synchronized 实现线程同步,是线程安全的.
ArrayList 是非线程安全的。
性能:
ArrayList 在性能方面要优于 Vector.
扩容:
ArrayList 和 Vector 都会根据实际的需要动态地调整容量,只不过在 Vector 扩容每次会增加 1 倍,而 ArrayList 只会增加 50%。Vector在创建时可以自己指定扩容的大小,ArrayList不可以.
下面是ArrayList的扩容方式:
Vector在创建时可以自己指定扩容每次扩容时增加的大小
Vector扩容: