数组中有多少元素不为空?

时间:2010-03-06 07:35:33

标签: c# .net winforms arrays

数组是由假定的元素定义的,比如像 String [] strArray = new String [50];

现在从50个元素中只分配了一些元素,剩下的都是null,然后我想要分配元素的数量。

就像这里只分配了30个元素然后我想要那个数字。

3 个答案:

答案 0 :(得分:29)

您可以使用Enumerable.Count

string[] strArray = new string[50];
...
int result = strArray.Count(s => s != null);

这个extension method迭代数组并计算指定谓词适用的元素数。

答案 1 :(得分:7)

使用LINQ,您可以尝试

int count = strArray.Count(x => x != null);

答案 2 :(得分:1)

使用LINQ:

int i = (from s in strArray where !string.IsNullOrEmpty(s) select s).Count();