Back to questions
Junior — Middle
71
Что подразумевается под термином 'Capacity' в структуре данных списка?
Answer from AI
sobes.tech AI
В структуре данных List в C# свойство Capacity обозначает количество элементов, которое список может содержать без необходимости выделения дополнительной памяти.
- Capacity всегда больше или равно текущему количеству элементов (Count).
- При добавлении элементов, если Count превышает Capacity, список автоматически увеличивает Capacity, выделяя новый массив большего размера и копируя туда данные.
Это важно для производительности: если заранее известно примерное количество элементов, можно задать Capacity, чтобы избежать частых перераспределений памяти.
Пример:
List<int> numbers = new List<int>(10); // Capacity = 10
for (int i = 0; i < 10; i++) {
numbers.Add(i);
}
Console.WriteLine(numbers.Capacity); // 10
numbers.Add(11); // Capacity увеличится, например, до 20
Console.WriteLine(numbers.Capacity); // 20
Таким образом, Capacity — это внутренний размер массива, используемого списком, а Count — фактическое количество элементов.