Linq表达式将数组的所有值设置为给定值

Eri*_*sch 11 c# linq lambda

我有一些代码,我想变成一个linq表达式(最好使用lambdas),以便更容易用作委托.代码如下所示:

List<DateTime[]> changes = new List<DateTime[]>();
changes = PopulateChanges();
for (int i = 0; i < changes.Count; i++)
{
    for(int j = 0; j < changes[i].Length; j++)
    {
        changes[i][j] = DateTime.MinValue;
    }
}
Run Code Online (Sandbox Code Playgroud)

对于我的生活,我似乎无法想象这一点.我尝试过使用ForEach和各种形式的选择等等.似乎没什么用.

仅供参考,我知道DateTime默认为MinValue,实际上这是在已经设置之后将数组清除为默认值.

任何人都可以用工作表达来帮助我吗?

编辑:

我想我在这里说的是我想要一种简洁的方法将多维数组的所有元素设置为给定值.当然,嵌套的for循环可以工作,我当然可以把它放在一个函数中(我已经完成了).我只想要一些更简洁的东西,可以更容易地在代表中使用,而无需创建多行怪物.

Luk*_*keH 14

这应该可以解决问题.

它不是LINQ,它与你的嵌套for循环并没有太大的不同,只是略微冗长.

changes.ForEach(x => Array.Clear(x, 0, x.Length));
Run Code Online (Sandbox Code Playgroud)

肯定有(ab)使用LINQ来实现相同结果的方法,但我认为它们是脏兮兮的.此外,LINQ等价物可能不会比上面的例子更冗长.