是否存在可以存储在List中的元素的限制?

时间:2009-11-13 17:43:13

标签: c# .net collections ilist

可以存储在List中的元素是否有限制?或者你可以保持添加元素直到你内存不足?

1 个答案:

答案 0 :(得分:20)

List<T>的当前实现使用Int32 到处 - 为其Count属性构建其支持数组,作为索引器及其所有内部操作 - 因此当前理论最多为Int32.MaxValue项(2^31-12147483647)。

但.NET框架的最大对象大小限制为2GB,因此您只能使用List<byte>List<bool>等单字节项列表来获取项目限制附近的任何位置。

实际上,在达到这些限制之前,你可能会耗尽连续的内存。