所以我想在特定索引中插入一个值,这意味着如果我要插入的索引不存在或大于大小,我会抛出异常,否则,我会使用这种方法来确保数组的容量不为空:
private void ensureCapacity(int size_wanted)
{
int max_capacity = storage.length;
if (size_wanted > max_capacity)
{
max_capacity = max_capacity * GROW_FACTOR +1;
storage = Arrays.copyOf(storage, max_capacity); // increases array size + copy contents
}
}
然后在这一点上,我想扩展数组并已经制作了我原来的副本,并且已经增加了大小,对吧?
我需要做的就是使用循环并将所有内容向右移动一个,以便为我要插入的索引留出空间,对吗?