在C#.NET中使用单个值初始化整数数组

时间:2013-01-08 07:45:30

标签: c# .net

  

可能重复:
  How do I quicky fill an array with a specific value?

有没有办法初始化一个整数数组,其值如-1,而不必显式分配每个项目?

基本上,如果我有

int[] MyIntArray = new int[SomeCount];

默认情况下,所有项目都分配为0。有没有办法在不使用循环的情况下将该值更改为-1?或使用{}明确指定每个项目?

3 个答案:

答案 0 :(得分:43)

int[] myIntArray = Enumerable.Repeat(-1, 20).ToArray();

答案 1 :(得分:18)

您可以使用Enumerable.Repeat方法

int[] myIntArray = Enumerable.Repeat(1234, 1000).ToArray()

将创建一个包含1000个元素的数组,这些元素的值均为1234。

答案 2 :(得分:12)

如果您有一个值(或只有几个),您可以使用collection initializer

明确设置它们
int[] MyIntArray = new int[] { -1 };

如果你有很多,你可以像这样使用Enumerable.Repeat

int[] MyIntArray = Enumerable.Repeat(-1, YourArraySize).ToArray();