📜  编辑列表元素linq c#(1)

📅  最后修改于: 2023-12-03 15:27:38.368000             🧑  作者: Mango

编辑列表元素 LINQ C#

在C#中,我们经常会使用列表进行临时的数据存储和操作,但有时我们需要对列表中的元素进行编辑和修改。这时,使用LINQ可以很方便地实现对列表元素的编辑和操作。

前提条件

在开始编写程序之前,我们需要了解一些C#和LINQ的基本知识,包括:

  • 对象初始化器
  • 匿名类型
  • Lambda表达式
  • LINQ查询操作符和扩展方法
编辑列表元素

假设我们有一个Person类,它有两个属性:姓名和年龄。

public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

现在,我们创建一个Person列表,并向其中添加一些Person对象。

List<Person> persons = new List<Person>
{
    new Person { Name = "Jack", Age = 20 },
    new Person { Name = "Andy", Age = 25 },
    new Person { Name = "Lucy", Age = 30 },
    new Person { Name = "Tom", Age = 35 },
    new Person { Name = "Kate", Age = 40 },
};
1. 修改元素属性值

我们可以使用对象初始化器和Lambda表达式来修改列表中元素的属性值。

例如,将年龄为25的Person对象的姓名修改为"Tony":

persons.First(p => p.Age == 25).Name = "Tony";
2. 新建临时对象

使用LINQ查询操作符或扩展方法,可以很方便地从列表中筛选出符合条件的元素,并将它们转换为一个新的列表或数组。

例如,将年龄大于30的Person对象的姓名和年龄放入一个匿名类型的对象中:

var selectedPersons = persons.Where(p => p.Age > 30)
                             .Select(p => new { p.Name, p.Age })
                             .ToList();
3. 删除元素

使用LINQ查询操作符或扩展方法,还可以很方便地从列表中删除符合条件的元素。

例如,删除年龄为25的Person对象:

persons.RemoveAll(p => p.Age == 25);
总结

本文介绍了如何使用LINQ对C#列表元素进行编辑和操作。

具体来说,我们可以使用对象初始化器和Lambda表达式来修改元素属性值,使用LINQ查询操作符或扩展方法来新建临时对象或删除元素。

相信本文对你掌握C#的LINQ列表操作会有很大的帮助。