C# 使用LINQ修改List<T>中第一个满足条件的元素
{/'title/':/'C# 使用LINQ修改ListWhere方法和ForEach方法来实现对List中满足条件的第一个元素的修改。//n//n首先,我们可以使用Where方法筛选出满足条件的元素,然后使用FirstOrDefault方法来获取第一个满足条件的元素。接着,可以使用ForEach方法遍历只含有一个元素的列表,并对该元素进行修改。//n//n下面是一个示例代码://n//ncsharp//nusing System;//nusing System.Collections.Generic;//nusing System.Linq;//n//nclass Program//n{//n static void Main(string[] args)//n {//n List<Data> dataList = new List<Data>()//n {//n new Data() { Name = /'a/', Value = 1 },//n new Data() { Name = /'b/', Value = 2 },//n new Data() { Name = /'a/', Value = 3 },//n new Data() { Name = /'c/', Value = 4 }//n };//n//n dataList.Where(data => data.Name == /'a/').FirstOrDefault()?.Modify();//n//n dataList.ForEach(data => Console.WriteLine($/'Name: {data.Name}, Value: {data.Value}/'));//n }//n}//n//nclass Data//n{//n public string Name { get; set; }//n public int Value { get; set; }//n//n public void Modify()//n {//n // 在这里进行修改//n Value = 10;//n }//n}//n//n//n在上述示例中,我们使用Where方法来筛选出Name为/'a/'的元素,并使用FirstOrDefault方法获取第一个满足条件的元素。然后,我们通过?.操作符来调用该元素的Modify方法进行修改。最后,我们使用ForEach方法遍历整个列表,并打印每个元素的Name和Value属性的值。//n//n输出结果为://n//n//nName: a, Value: 10//nName: b, Value: 2//nName: a, Value: 3//nName: c, Value: 4//n//n//n可以看到,只有第一个Name为/'a/'的元素的Value属性被修改为了10,其他元素保持不变。/
原文地址: https://www.cveoy.top/t/topic/qn83 著作权归作者所有。请勿转载和采集!