Vector
Vector
CAMELLIA!!! note 目录
Vector
- Vector中所有的方法都有synchronized修饰,所有方都是线程安全的。
- 整体的执行效率较低,已经很少使用了而且现在保证线程安全有了新手段。
一、Vector的初始化容量
无参构造函数:使用
new Vector()
时,默认的初始容量是10。1
Vector<Integer> vector = new Vector<>();
指定容量构造函数:使用
new Vector(int initialCapacity)
时,你可以显式地设置初始容量。例如:1
Vector<Integer> vector = new Vector<>(20); // 初始容量设置为20
指定容量和增量构造函数:使用
new Vector(int initialCapacity, int capacityIncrement)
可以设置初始容量和扩展时增加的容量。例如:1
Vector<Integer> vector = new Vector<>(10, 5); // 初始容量为10,每次扩展增加5个元素
二、Vector扩容策略
自动扩容: 当
Vector
的元素数量达到当前容量时,它会自动扩容。默认情况下,扩容操作会将内部数组的容量增加一倍。例如,如果当前容量为10,当达到10个元素时,扩容到20个元素。容量增长因子: 可以通过构造函数来设置容量增长因子。例如,使用
new Vector<>(initialCapacity, capacityIncrement)
来指定每次扩容时容量增加的数量。如果不指定或设置为0,则默认容量增量为0.5倍(即容量乘以1.5):- 初始容量是10,如果容量增量是5,且当前容纳10个元素,当第11个元素被添加时,新的容量将是10 + 5 = 15。