在 C# .NET 中,array.Length 与 list.Count 的原因是啥? [复制]

Posted

技术标签:

【中文标题】在 C# .NET 中,array.Length 与 list.Count 的原因是啥? [复制]【英文标题】:In C# .NET, what is the reason for array.Length vs. list.Count? [duplicate]在 C# .NET 中,array.Length 与 list.Count 的原因是什么? [复制] 【发布时间】:2010-11-14 23:21:30 【问题描述】:

可能重复:count vs length vs size in a collection

我是否忽略了“长度”和“计数”之间的语义差异,或者 .NET 框架中的某些实现细节是否需要这些相似概念的不同名称?考虑到对命名和框架中其他所有内容的密切关注,必须有一个很好的解释。

【问题讨论】:

这是http://***.com/questions/300522/count-vs-length-vs-size-in-a-collection/300540 的副本(您可以在那里找到一个很好的答案,包括其他变体。) 【参考方案1】:

实际上这些是相似但不完全相同的概念。由于数组的长度是静态的,并且它的内存是一次性分配的 (int[] intarray = new int[10]; // 为 10 个整数分配内存),因此 Length 属性是完全静态的。否则,像 List 这样的 Enumerables 可能事先不知道它们的 Length,因此 Property Count 将以某种方式“计算”长度(您可能会遍历 enumerable 中的所有关联元素)。这是基本的区别。

【讨论】:

以上是关于在 C# .NET 中,array.Length 与 list.Count 的原因是啥? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

C#中如何获取数组的最后一个元素?

C# 面试题二

C# 填充数组

JavaScript------去掉Array中重复值

List.Clear() 在 C# 中是如何实现的?

如何用c#从一组数中随机抽取数字?