计算列表数组中的非null元素

时间:2016-02-25 19:38:40

标签: c# arrays list

我无法在其他任何地方找到这个。 我有一系列清单:

public List<xmldata>[] XMLArrayList = new List<xmldata>[9999];

要初始化并在每个位置插入一个列表,我会执行以下操作:

for(int m=0; m< XList.XMLArrayList.Count(); m++)
{
    XList.XMLArrayList[m] = new List<xmldata>();
}

但我想计算有多少元素没有空。 EX:位置0到5有一个列表。但其他职位没有。

尝试了一种linq方法:

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

但是它返回了数组大小(9999)。如何计算列表数组中的非null元素? Ps:已经尝试过Dictionary和List List of List - 这种方法最适合实现我需要的东西。

感谢。

2 个答案:

答案 0 :(得分:5)

试试这个:

int count = XList.XMLArrayList.Count(x => x.Count()>0);

答案 1 :(得分:0)

你也可以这样做

XList.XMLArrayList.Where(x => x.Any()).Count();