Enumerable.Range(Int32, Int32) 方法

定義

產生在指定之範圍內的整數序列。

public:
 static System::Collections::Generic::IEnumerable<int> ^ Range(int start, int count);
public static System.Collections.Generic.IEnumerable<int> Range (int start, int count);
static member Range : int * int -> seq<int>
Public Function Range (start As Integer, count As Integer) As IEnumerable(Of Integer)

參數

start
Int32

序列中第一個整數的值。

count
Int32

要產生的循序整數數目。

傳回

C# 或 IEnumerable(Of Int32) Visual Basic 中的 , IEnumerable<Int32> 其中包含循序整數的範圍。

例外狀況

count 小於 0。

-或-

start + count -1 大於 Int32.MaxValue

範例

下列程式碼範例示範如何使用 Range 來產生值序列。

// Generate a sequence of integers from 1 to 10
// and then select their squares.
IEnumerable<int> squares = Enumerable.Range(1, 10).Select(x => x * x);

foreach (int num in squares)
{
    Console.WriteLine(num);
}

/*
 This code produces the following output:

 1
 4
 9
 16
 25
 36
 49
 64
 81
 100
*/
' Generate a sequence of integers from 1 to 10
' and project their squares.
Dim squares As IEnumerable(Of Integer) =
Enumerable.Range(1, 10).Select(Function(x) x * x)

Dim output As New System.Text.StringBuilder
For Each num As Integer In squares
    output.AppendLine(num)
Next

' Display the output.
Console.WriteLine(output.ToString())

' This code produces the following output:
'
' 1
' 4
' 9
' 16
' 25
' 36
' 49
' 64
' 81
' 100

備註

此方法是使用延後執行來實作。 立即傳回值是物件,可儲存執行動作所需的所有資訊。 除非直接在 GetEnumerator C# 或 Visual Basic 中使用 foreach 來列舉物件,否則 For Each 不會執行這個方法所表示的查詢。

適用於