-
实现方法
首先Vector是从JDK1.2就提供的list的实现,Vector和ArrayList一样,也是基于数组来实现的
-
构造方法
创建一个大小为10的数组,并赋值给elementData对象,并将capacityIncrement设置为0
-
插入对象:add(E)
Vector中的add方法增加了synchronized关键字,因此此方法是线程安全的,除此之外他和ArrayList基本相同,不同点为当数组大小不够用的时候,扩增策略不同(如果capacityIncrement大于0,则将Objec数组的待续哦啊扩大为现在size上加上capacityIncrement的值,如果capacityIncrement等于小于0,则将Object数组的大小夸大为现有size的两倍)
-
删除对象:remove(E)
除了其调用的removeElement方法上有synchronized关键字外,和arrayList完全相同
-
获取单个对象:get(index)
出了方法上有syhchronized关键字,实现和ArrayList相同
-
遍历对象:iterator()
和ArrayList完全相同
-
判断对象是否存在:contains(E)
和ArrayList唯一不同就是indexOf方法上有synchronized关键字
-
注意要点
Vector是基于synchronized实现的线程安全的ArrayList,扩增方式和ArrayList稍微有些不同,可通过传入capacityIncrement来控制容量的扩充
时间: 2024-12-23 19:30:17