有没有办法初始化一个整数数组,其值如-1,而不必显式分配每个项目?
基本上,如果我有
int[] MyIntArray = new int[SomeCount];
默认情况下,所有项目都分配为0。有没有办法在不使用循环的情况下将该值更改为-1?或使用{}明确指定每个项目?
答案 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();