C# 修改list所有對象中的某字段
文法糖:ForEach(批量修改時候友善)
最簡單的方法就是用ForEach
List<MyObject> myObject = new List<MyObject>();
myObject.ForEach(w => w.MyBool = true);
上面代碼就是吧我們myObject 對象集合中所有的MyBool都更改為true
using System;
using System.Collections.Generic;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
//聲明一個對象集合
List<MyObject> myObject = new List<MyObject>();
//循環添加對象到集合内
for (int i = 1; i < 20; i++)
{
MyObject woei = new MyObject
{
MyInt = i,
MyBool=false
};
myObject.Add(woei);
}
//開始輸出第一次
Console.WriteLine("開始輸出第一次:");
//循環輸出發現我們的資料中MyBool全是false
foreach (var item in myObject)
{
Console.WriteLine($"int:{item.MyInt},bool:{item.MyBool}");
}
//通過更改後,改成true
myObject.ForEach(w => w.MyBool = true);
Console.WriteLine("開始輸出第二次:");
//第二次輸出:循環輸出發現我們的資料中MyBool全是true
foreach (var item in myObject)
{
Console.WriteLine($"int:{item.MyInt},bool:{item.MyBool}");
}
}
}
public class MyObject
{
public int MyInt { get; set; }
public bool MyBool { get; set; }
}
}