当前位置: 代码迷 >> J2SE >> vector容量增大时是不是需要转移原数据
  详细解决方案

vector容量增大时是不是需要转移原数据

热度:105   发布时间:2016-04-24 12:16:35.0
vector容量增大时是否需要转移原数据
使用c3p0连接池 实际应用中 仍然有一些用户在更新数据时需要长时间的等待

java的vector实现原理是什么 当vector的容量用完此时再添加一个对象 引起容量的再分配 此时如何分配的?原有数据是否会因为容量变化而要转移?

请高手指点一二


------解决方案--------------------
protected Object[] elementData;//里面就是一个object[]数组
Java code
private void ensureCapacityHelper(int minCapacity) {    int oldCapacity = elementData.length;    if (minCapacity > oldCapacity) {        Object[] oldData = elementData;        int newCapacity = (capacityIncrement > 0) ?        (oldCapacity + capacityIncrement) : (oldCapacity * 2);            if (newCapacity < minCapacity) {        newCapacity = minCapacity;        }            elementData = Arrays.copyOf(elementData, newCapacity);    }    }