今天研究arrylist时发现个问题,当指定添加元素位置大于数组实际size时会发生报错。
当我跳过6位置在7位置添加元素时会报错。然后我有尝试将6号位置补充上元素。还是不行,依然报错。很是苦恼。
看add(位置,元素)源码
public void add(int index, E element) {
rangeCheckForAdd(index);
ensureCapacityInternal(size + 1); // Increments modCount!!
System.arraycopy(elementData, index, elementData, index + 1,size - index);
elementData[index] = element;
size++;
}