如何用C#中的整数序列创build数组?

F#有序列 ,允许创build序列:

seq { 0 .. 10 } 

从0到10创build数字序列。

在C#中有类似的东西吗?

您可以使用Enumerable.Range(0, 10); 。 例:

 var seq = Enumerable.Range(0, 10); 

MSDN页面在这里 。

 Enumerable.Range(0, 11); 

在指定的范围内生成一个整数的序列。

http://msdn.microsoft.com/en-us/library/system.linq.enumerable.range.aspx

你可以创build一个简单的function。 这将工作更复杂的序列。 否则Enumerable.Range应该做的。

 IEnumerable<int> Sequence(int n1, int n2) { while (n1 <= n2) { yield return n1++; } } 

我的实现:

  private static IEnumerable<int> Sequence(int start, int end) { switch (Math.Sign(end - start)) { case -1: while (start >= end) { yield return start--; } break; case 1: while (start <= end) { yield return start++; } break; default: yield break; } }