.NET Framework Class Library
Enumerable..::.Range Method

Generates a sequence of integral numbers within a specified range.

Namespace:  System.Linq
Assembly:  System.Core (in System.Core.dll)
Syntax

Visual Basic (Declaration)
Public Shared Function Range ( _
    start As Integer, _
    count As Integer _
) As IEnumerable(Of Integer)
Visual Basic (Usage)
Dim start As Integer
Dim count As Integer
Dim returnValue As IEnumerable(Of Integer)

returnValue = Enumerable.Range(start, count)
C#
public static IEnumerable<int> Range(
    int start,
    int count
)
Visual C++
public:
static IEnumerable<int>^ Range(
    int start, 
    int count
)
JScript
public static function Range(
    start : int, 
    count : int
) : IEnumerable<int>

Parameters

start
Type: System..::.Int32
The value of the first integer in the sequence.
count
Type: System..::.Int32
The number of sequential integers to generate.

Return Value

Type: System.Collections.Generic..::.IEnumerable<(Of <(Int32>)>)
An IEnumerable<Int32> in C# or IEnumerable(Of Int32) in Visual Basic that contains a range of sequential integral numbers.
Exceptions

ExceptionCondition
ArgumentOutOfRangeException

count is less than 0.

-or-

start + count -1 is larger than MaxValue.

Remarks

This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in Visual C# or For Each in Visual Basic.

Examples

The following code example demonstrates how to use Range to generate a sequence of values.

Visual Basic
' 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.
MsgBox(output.ToString())

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

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

Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5

.NET Compact Framework

Supported in: 3.5

XNA Framework

Supported in: 3.0
See Also

Reference

Tags :


Page view tracker