C#中linq表达式用法的归纳总结(上)

从事了将近两年的.net core开发,给我印象最深的,无疑就是C#中linq表达式了。

        linq表达式,全称语言集成查询,语言集成查询 (LINQ) 是一系列直接将查询功能集成到 C# 语言的技术统称。 数据查询历来都表示为简单的字符串,没有编译时类型检查或 IntelliSense 支持。 此外,需要针对每种类型的数据源了解不同的查询语言:SQL 数据库、XML 文档、各种 Web 服务等。 借助 LINQ,查询成为了最高级的语言构造,就像类、方法和事件一样。

     以上是微软官方给的定义,平日里我对linq使用的比较多的一般就是针对集合和数据库的增删改查,废话不多说,直接上代码

   where用法

     官方定义:where 子句用在查询表达式中,用于指定将在查询表达式中返回数据源中的哪些元素。 它将一个布尔条件(谓词)应用于每个源元素(由范围变量引用),并返回满足指定条件的元素。 一个查询表达式可以包含多个 where 子句,一个子句可以包含多个谓词子表达式。

     简单的说,where就是查询用的,根据特定的表达式获取自己想要的结果

List<string> testList = new List<string>() { "apple", "watermelon", "pear" };
var result = testList.Where(c => c.Equals("apple")).FirstOrDefault();

// Output
// apple

 

   select用法

     官方定义:在查询表达式中,select 子句指定在执行查询时产生的值的类型。 根据计算所有以前的子句以及根据 select 子句本身的所有表达式得出结果。

     官方的定义不容易理解,例如有一个student列表,我想把student列表的所有name转换成一个List<string>,这个时候 select就可以派上用场了

List<Student> students = new List<Student>()
            {
                new Student()
                {
                    Name = "xiaoming",
                    Age = 10
                },
                new Student()
                {
                    Name = "xiaohong",
                    Age = 9
                },
                new Student()
                {
                    Name = "xiaodong",
                    Age = 16
                }
            };

List<string> nameList = students.Select(c => c.Name).ToList();

  

   FirstOrDefault用法

     返回序列中的第一个元素;如果未找到该元素,则返回默认值。

List<int> testList = new List<int>() { 1, 2, 3 };
int result = testList.FirstOrDefault();

        

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值