C# 使用Lambda/linq将所有数组值设置为0

C# 使用Lambda/linq将所有数组值设置为0,c#,linq,lambda,C#,Linq,Lambda,是否可以使用Lambda/Linq将所有int数组值设置为0 public int[] Reset() { int[] M = new int[MIlg]; \\MIlg - length of array for (int i = 0; i < M.Length; i++) { M[i] = 0; } return M; } public int[]重置() { int[]M=new int[MIlg];\\MIlg-数组长度 对

是否可以使用Lambda/Linq将所有int数组值设置为0

public int[] Reset()
{
    int[] M = new int[MIlg]; \\MIlg - length of array
    for (int i = 0; i < M.Length; i++)
    {
        M[i] = 0;
    }
    return M;
}
public int[]重置()
{
int[]M=new int[MIlg];\\MIlg-数组长度
对于(int i=0;i
LINQ本质上是查询,而不是修改。但是已经有一种方法可以做到这一点-:


当然,这是假设您要清除现有阵列。您当前的方法没有多大意义,因为新数组已经开始,每个元素都设置为默认值,所以您可以使用
newint[length]
。我希望名为
Reset
的方法会影响现有数组。

LINQ本质上是查询,而不是修改。但是已经有一种方法可以做到这一点-:


当然,这是假设您要清除现有阵列。您当前的方法没有多大意义,因为新数组已经开始,每个元素都设置为默认值,所以您可以使用
newint[length]
。我希望名为
Reset
的方法会影响现有数组。

LINQ用于查询,而不是修改。顺便说一句,我强烈建议您使用更有意义的名称-
MIlg
是一个非常模糊的名称,依我看。在c#中,新的int数组将始终创建具有0值的连续int块。LINQ用于查询,不修改。作为旁白,我强烈建议您使用更有意义的名称-
MIlg
是一个非常模糊的名称,依我看。在c#中,新的int数组将始终创建值为0的连续int块。
Array.Clear(array, 0, array.Length);