c# - 列表的默认容量

标签 c# .net list capacity

List 的默认容量是多少?

最佳答案

实际上,它的容量从 0 开始。当您添加第一个元素时,当前实现分配容量 4。之后,如果需要扩展,容量会不断翻倍,以保证分摊 O(1) 操作。

请记住,这是当前的行为。你不应该依赖它。这应该展示当前的行为:

List<int> list = new List<int>();
int capacity = list.Capacity;
Console.WriteLine("Capacity: " + capacity);

for (int i = 0; i < 100000; i++)
{
    list.Add(i);
    if (list.Capacity > capacity)
    {
        capacity = list.Capacity;
        Console.WriteLine("Capacity: " + capacity);
    }
}

关于c# - 列表的默认容量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1762817/

相关文章:

c# - 从代理后面的应用程序连接 WCF 服务 - 测试模拟

c# - 如何调用wcf服务方法?

.net - 所有标准 C++ 功能都适用于 C++/CLI 吗?

Java List.add() UnsupportedOperationException

python - 有没有一种更优雅/优化的方式来实现这种连接算法?

c# - Subsonic 3 ActiveRecord 生成问题

c# - 使用字节数组时的堆碎片

c# - 没有收到所有串行数据

c# - ShowDialog 不阻塞执行代码但阻塞 UI

python - 检查二维列表中的每个元素