JDK1.8 Vector 源码相关分析
/**
* 底层实现逻辑: 数组 线性表 查询效率高,修改效率低
* 所有的操作类同ArrayList 但是synchronize 线程安全
* 效率低
*/
public class Vector<E>
extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
{
/**
*
* 存放的数组
*/
protected Object[] elementData;
/**
* 集合的大小
*/
protected int elementCount;
/**
* 扩容 因素可调整 2倍
*
*/
protected int capacityIncrement;
/**
* 默认的构造方法中存放的长度是10
**/
public Vector() {
this(10);
}
/**
* synchronized 新增是线程安全的
**/
public synchronized boolean add(E e) {
modCount++;
ensureCapacityHelper(elementCount + 1);
elementData[elementCount++] = e;
return true;
}
}
* 底层实现逻辑: 数组 线性表 查询效率高,修改效率低
* 所有的操作类同ArrayList 但是synchronize 线程安全
* 效率低
*/
public class Vector<E>
extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
{
/**
*
* 存放的数组
*/
protected Object[] elementData;
/**
* 集合的大小
*/
protected int elementCount;
/**
* 扩容 因素可调整 2倍
*
*/
protected int capacityIncrement;
/**
* 默认的构造方法中存放的长度是10
**/
public Vector() {
this(10);
}
/**
* synchronized 新增是线程安全的
**/
public synchronized boolean add(E e) {
modCount++;
ensureCapacityHelper(elementCount + 1);
elementData[elementCount++] = e;
return true;
}
}