Export (0) Print
Expand All

List(Of T).GetRange Method

Creates a shallow copy of a range of elements in the source List(Of T).

Namespace:  System.Collections.Generic
Assembly:  mscorlib (in mscorlib.dll)

'Declaration
Public Function GetRange ( _
	index As Integer, _
	count As Integer _
) As List(Of T)
'Usage
Dim instance As List 
Dim index As Integer 
Dim count As Integer 
Dim returnValue As List(Of T)

returnValue = instance.GetRange(index, _
	count)

Parameters

index
Type: System.Int32

The zero-based List(Of T) index at which the range starts.

count
Type: System.Int32

The number of elements in the range.

Return Value

Type: System.Collections.Generic.List(Of T)
A shallow copy of a range of elements in the source List(Of T).

ExceptionCondition
ArgumentOutOfRangeException

index is less than 0.

-or-

count is less than 0.

ArgumentException

index and count do not denote a valid range of elements in the List(Of T).

A shallow copy of a collection of reference types, or a subset of that collection, contains only the references to the elements of the collection. The objects themselves are not copied. The references in the new list point to the same objects as the references in the original list.

A shallow copy of a collection of value types, or a subset of that collection, contains the elements of the collection. However, if the elements of the collection contain references to other objects, those objects are not copied. The references in the elements of the new collection point to the same objects as the references in the elements of the original collection.

In contrast, a deep copy of a collection copies the elements and everything directly or indirectly referenced by the elements.

This method is an O(n) operation, where n is count.

The following code example demonstrates the GetRange method and other methods of the List(Of T) class that act on ranges. At the end of the code example, the GetRange method is used to get three items from the list, beginning with index location 2. The ToArray method is called on the resulting List(Of T), creating an array of three elements. The elements of the array are displayed.

Imports System
Imports System.Collections.Generic

Public Class Example

    Public Shared Sub Main()

        Dim input() As String = { "Brachiosaurus", _
                                  "Amargasaurus", _
                                  "Mamenchisaurus" }

        Dim dinosaurs As New List(Of String)(input)

        Console.WriteLine(vbLf & "Capacity: {0}", dinosaurs.Capacity)

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        Console.WriteLine(vbLf & "AddRange(dinosaurs)")
        dinosaurs.AddRange(dinosaurs)

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        Console.WriteLine(vbLf & "RemoveRange(2, 2)")
        dinosaurs.RemoveRange(2, 2)

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        input = New String() { "Tyrannosaurus", _
                               "Deinonychus", _
                               "Velociraptor" }

        Console.WriteLine(vbLf & "InsertRange(3, input)")
        dinosaurs.InsertRange(3, input)

        Console.WriteLine()
        For Each dinosaur As String In dinosaurs
            Console.WriteLine(dinosaur)
        Next

        Console.WriteLine(vbLf & "output = dinosaurs.GetRange(2, 3).ToArray")
        Dim output() As String = dinosaurs.GetRange(2, 3).ToArray()

        Console.WriteLine()
        For Each dinosaur As String In output
            Console.WriteLine(dinosaur)
        Next 

    End Sub 
End Class 

' This code example produces the following output: 

'Capacity: 3 

'Brachiosaurus 
'Amargasaurus 
'Mamenchisaurus 

'AddRange(dinosaurs) 

'Brachiosaurus 
'Amargasaurus 
'Mamenchisaurus 
'Brachiosaurus 
'Amargasaurus 
'Mamenchisaurus 

'RemoveRange(2, 2) 

'Brachiosaurus 
'Amargasaurus 
'Amargasaurus 
'Mamenchisaurus 

'InsertRange(3, input) 

'Brachiosaurus 
'Amargasaurus 
'Amargasaurus 
'Tyrannosaurus 
'Deinonychus 
'Velociraptor 
'Mamenchisaurus 

'output = dinosaurs.GetRange(2, 3).ToArray 

'Amargasaurus 
'Tyrannosaurus 
'Deinonychus

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, 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.

.NET Framework

Supported in: 3.5, 3.0, 2.0

.NET Compact Framework

Supported in: 3.5, 2.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft