Enumerable.Range(Int32, Int32) Metoda

Definicja

Generuje sekwencję liczb całkowitych w określonym zakresie.

C#
public static System.Collections.Generic.IEnumerable<int> Range (int start, int count);

Parametry

start
Int32

Wartość pierwszej liczby całkowitej w sekwencji.

count
Int32

Liczba sekwencyjnych liczb całkowitych do wygenerowania.

Zwraca

Element IEnumerable<Int32> w języku C# lub IEnumerable(Of Int32) w języku Visual Basic zawierający zakres liczb całkowitych sekwencyjnych.

Wyjątki

count wartość jest mniejsza niż 0.

-lub-

start + count -1 jest większy niż Int32.MaxValue.

Przykłady

W poniższym przykładzie kodu pokazano, jak użyć Range metody generowania sekwencji wartości.

C#
// 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
*/

Uwagi

Ta metoda jest implementowana za pomocą odroczonego wykonania. Bezpośrednio zwracana wartość jest obiektem, który przechowuje wszystkie informacje wymagane do wykonania akcji. Zapytanie reprezentowane przez tę metodę nie jest wykonywane, dopóki obiekt nie zostanie wyliczony, wywołując metodę GetEnumerator bezpośrednio lub używając w foreach języku C# lub For Each w Visual Basic.

Dotyczy

Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0