LINQ(Language Integrated Query,语言集成查询)是.NET框架中的一种查询技术,它允许开发者使用类似SQL的查询语法来操作数据。Where
是 LINQ 中的一个扩展方法,用于筛选集合中的元素。Count
方法则用于计算集合中的元素数量。
Where
是一个扩展方法,适用于实现了 IEnumerable<T>
接口的集合类型,如 List<T>
、Array
等。以下是一个使用 LINQ Where
和 Count
方法的示例:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
// 筛选出大于5的数字并计数
int count = numbers.Where(n => n > 5).Count();
Console.WriteLine($"大于5的数字数量: {count}");
}
}
Where
集合计数结果不正确?原因:
解决方法:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
// 错误的筛选条件
int count = numbers.Where(n => n > 10).Count();
Console.WriteLine($"大于10的数字数量: {count}"); // 输出结果应为0
}
}
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10 };
// 检查数据源是否有重复元素
int count = numbers.Where(n => n > 5).Distinct().Count();
Console.WriteLine($"大于5的唯一数字数量: {count}"); // 输出结果应为5
}
}
希望这些信息对你有所帮助!如果有更多问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云