# Vector ## 数组容量自增 ```java private void grow(int minCapacity) { // overflow-conscious code int oldCapacity = elementData.length; // 默认容量翻倍 int newCapacity = oldCapacity + ((capacityIncrement > 0) ? capacityIncrement : oldCapacity); if (newCapacity - minCapacity < 0) newCapacity = minCapacity; if (newCapacity - MAX_ARRAY_SIZE > 0) newCapacity = hugeCapacity(minCapacity); elementData = Arrays.copyOf(elementData, newCapacity); } ``` 和 `ArrayList` 的区别是默认增长策略直接翻倍,且是同步的 ## 最后 fast-fail。线程安全。 没啥好说的。