可以存储在List中的元素是否有限制?或者你可以保持添加元素直到你内存不足?
答案 0 :(得分:20)
List<T>
的当前实现使用Int32
到处 - 为其Count
属性构建其支持数组,作为索引器及其所有内部操作 - 因此当前理论最多为Int32.MaxValue
项(2^31-1
或2147483647
)。
但.NET框架的最大对象大小限制为2GB,因此您只能使用List<byte>
或List<bool>
等单字节项列表来获取项目限制附近的任何位置。
实际上,在达到这些限制之前,你可能会耗尽连续的内存。