Списки
List<T> - Как установить ёмкость списка и зачем оно нужно?
Ёмкость списка (Capacity
) — это количество элементов, которые можно поместить в список без увеличения размерности массива.
Указание ёмкости позволяет оптимизировать выделение памяти для списка и повысить производительность.
List<T>
внутри состоит из обычного массива. С массивами эффективней работать, если заранее известен их размер.
Если размер не известен, то приходится пересоздавать массив и это несёт определенные накладные расходы.
// инициализируем список размером в три элемента
var list = new List<string>(3);
// добавляем три элемента
list.Add("one");
list.Add("two");
list.Add("three");
Console.WriteLine($"Capacity: {list.Capacity}"); // Capacity: 3
// если добавим ещё, то списку придётся пересоздавать внутренний массив увеличив его в два раза
list.Add("four");
list.Add("five");
Console.WriteLine($"Capacity: {list.Capacity}"); // Capacity: 6