如何在不使用C#中的for循环的情况下将数组初始化为0

时间:2017-10-10 11:09:26

标签: c# arrays

我有一个名为Buffer的数组。我正在使用for循环将其内容初始化为0。我如何在C#中的单个语句中执行此操作?我不想使用for循环。

byte[] Buffer = new byte[50];
int arrC = 0;
// array initialization
for (arrC = 0; arrC < 50; arrC++)
{
    Buffer[arrC] = 0;
}

2 个答案:

答案 0 :(得分:10)

你没有,而你没有。 byte的默认值为0

因此,如果您创建类型为byte[]的数组,则数组中的每个项目都具有默认值0

答案 1 :(得分:-2)

如果您有一个byte数组,其中包含一些值,然后您想将其整个项目替换为0,那么方法是:

buffer = new byte[buffer.Length];

buffer = buffer.Select(c => (byte)0).ToArray();

或 - 由@Matthew Watson评论 - 我认为最适合将数组项设置为默认值

Array.Clear(buffer, 0, buffer.Length);