使用一系列数字初始化一个int数组

Sam*_*Sam 23 c# arrays

我想初始化一个int数组并用一系列数字填充它:

return new int[].Populate(30,50);

那么我会有一个30,31,32,33 ...... 50的阵列

Bro*_*ass 58

您可以使用Enumerable.Range()例如从30开始返回21个整数的数组:

return Enumerable.Range(30, 21).ToArray();
Run Code Online (Sandbox Code Playgroud)


Ant*_*ram 21

使用Enumerable.Range

var array = Enumerable.Range(30, 21).ToArray();
Run Code Online (Sandbox Code Playgroud)

这将导致从30开始的21个值的序列.简单地说,你得到你的{ 30 ... 50 }数组.

  • @SamStriano可能; 你为什么不尝试看看呢? (5认同)
  • @phoog 如果有人已经知道答案,这将节省他一些时间来建立一个项目来测试它 (2认同)

小智 7

使用 for 循环实际上比使用更快 Enumerable.Range().ToArray()

我测量它以创建一个包含 1 000 000 个元素的数组。

int[] array = Enumerable.Range(0, 1000000).ToArray();需要 9 毫秒,而创建一个数组int[] array2 = new int[1000000];并将其填充到 for 循环中只需要 3 毫秒。