C# Linq的Count()方法 – 返回序列中的元素数

  • Post category:C#

C#中的Linq查询语句可以通过Count()方法来返回一个序列中元素的数量。下面是详细的攻略及两个示例:

基本语法

Count()方法是在IEnumerable泛型接口下定义的扩展方法,也可以使用query表达式。Count()方法返回当前序列中的元素数。下面是Count()方法的语法:

int count = sequence.Count();

其中sequence是IEnumerable类型的实例,count是该序列中元素数量的整数。

示例1

假设有一个整数列表,统计其中所有大于5的元素的出现次数:

int[] numbers = { 1, 2, 3, 6, 7, 8, 10 };
int count = numbers.Count(n => n > 5);  
//返回大于5的数字的数量,即3

上述代码首先声明一个整数数组numbers,然后通过Count()方法计算元素个数,其中Lambda表达式由n > 5定义,仅仅统计数字大于5的元素数量。

示例2

现在假设有一个字符串列表,统计其中所有以”a”开头的单词的数量:

List<string> words = new List<string> { "apple", "banana", "arts", "application" };
int count = words.Where(w => w.StartsWith("a")).Count(); 
//返回以a开头的字符串的数量,即2

此示例首先声明了一个字符串列表words,并使用Where()方法过滤出以a开头的元素,最后通过Count()方法计算元素数量。

总结C#中的Count()方法用于计算指定集合的元素数量,可以优雅地解决统计元素数量的问题。可以通过Lambda表达式过滤和选择特定元素,方便实用。