Vector 类实现了一个动态数组。和 ArrayList 很相似,但是两者是不同的:
Vector 是同步访问的。Vector 包含了许多传统的方法,这些方法不属于集合框架。Vector 主要用在事先不知道数组的大小,或者只是需要一个可以改变大小的数组的情况。

Note:
Vector 底层使用的是对象数组 elementDataVector 是线程同步的,即线程安全。它的操作方法带有 synchronizedVector| 底层结构 | 版本 | 线程安全、效率 | 扩容倍数 | |
|---|---|---|---|---|
ArrayList |
可变数组 | Jdk1.2 | 不安全、效率高 | 1.5倍 |
Vector |
可变数组 | Jdk1.0 | 安全、效率不高 | 2倍 |
我们来 debug 下面这段代码。
public static void main(String[] args) {
// 无参构造
Vector vector = new Vector();
for (int i = 1