-3

有人可以解释一下内部数组列表是如何工作的吗?我的意思是问数组列表如何增加长度并添加新项目。它在内部是如何工作的?我想要解释内部数组列表如何增加长度并添加新项目。

4

1 回答 1

0

在内部,ArrayList(显然)使用数组来存储值。对于List<T>.

如果您查看(and ) 的私有方法EnsureCapacity(int),您会发现,当不足以容纳下一项时,会分配一个新的内部数组,该数组的大小是前一个数组的两倍。完成此操作后,较小数组的内容被复制到新数组中。ArrayListList<T>ArrayList

不过,这些都是实现细节,您不能确定每个实现都以相同的方式进行(我猜)。

无论如何,您应该List<T>在这种情况下使用。它的工作方式与 ArrayList 相同,但您也具有类型安全性。

于 2013-11-11T07:45:42.570 回答