【亲测有效】C# 使用lambda表达式修改集合的某个属性、字段的值

【亲测有效】C# 使用lambda表达式修改集合的某个属性、字段的值

前言:我们通常在开发的时候会面对各种需求,而我们又喜欢写代码的时候可以简洁、高雅、高效率。lambda表达式的出现正好能够帮助我们减少了一定的代码量,提高写代码的效率。

正文
我们经常需要对一个集合做一些自定义的修改,而C#又不允许使用foreach或者for修改集合内容,那么下面我介绍三种方式实现修改集合的某个属性、字段的值,用起来简洁方便,亲测有效。

下面有实体类SelectOption

public class SelectOption
{
    public string Title
    {
    	get;set;
    }
    public object Value
    {
    	get;set;
    }
}

实现的关键代码:

//实例化泛型集合
List<SelectOption> selectOptions = new List<SelectOption>();
//加入测试数据1
selectOptions.Add(new SelectOption()
{
    Title = "标题1",
    Value = "001"
});
//加入测试数据2
selectOptions.Add(new SelectOption()
{
    Title = "标题2",
    Value = "002"
});

//第一种方式,使用Select
selectOptions = selectOptions.Select(c =>
{
    c.Title = "测试:" + c.Title;
    return c;
}).ToList();

//第二种方式,使用ForEach
selectOptions.ForEach(item =>
{
    item.Title = "测试:" + item.Title;
});

//第三种方式,使用FindAll
selectOptions = selectOptions.FindAll(delegate(SelectOption obj) {
    obj.Title = "测试:" + obj.Title;
    return obj != null;
});

总结:三种实现方式都是可以在方法体里面加入逻辑判断代码,看个人喜好使用哪一种方式都行。

写完收工。


版权声明:本文为qq_40615333原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。