List<T>.RemoveRange Method
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Removes a range of elements from the List<T>.
Namespace: System.Collections.Generic
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Sub RemoveRange ( _
index As Integer, _
count As Integer _
)
public void RemoveRange(
int index,
int count
)
Parameters
- index
Type: System.Int32
The zero-based starting index of the range of elements to remove.
- count
Type: System.Int32
The number of elements to remove.
Exceptions
Exception | Condition |
---|---|
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<T>. |
Remarks
The items are removed and all the elements following them in the List<T> have their indexes reduced by count.
This method is an O(n) operation, where n is Count.
Examples
The following code example demonstrates the RemoveRange method and various other methods of the List<T> class that act on ranges. After the list has been created and modified, the RemoveRange method is used to remove two elements from the list, beginning at index location 2.
Imports System.Collections.Generic
Public Class Example
Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
Dim input() As String = {"Brachiosaurus", _
"Amargasaurus", _
"Mamenchisaurus"}
Dim dinosaurs As New List(Of String)(input)
outputBlock.Text += String.Format(vbLf & "Capacity: {0}", dinosaurs.Capacity) & vbCrLf
outputBlock.Text &= vbCrLf
For Each dinosaur As String In dinosaurs
outputBlock.Text &= dinosaur & vbCrLf
Next
outputBlock.Text &= vbLf & "AddRange(dinosaurs)" & vbCrLf
dinosaurs.AddRange(dinosaurs)
outputBlock.Text &= vbCrLf
For Each dinosaur As String In dinosaurs
outputBlock.Text &= dinosaur & vbCrLf
Next
outputBlock.Text += String.Format(vbLf & "RemoveRange(2, 2)") & vbCrLf
dinosaurs.RemoveRange(2, 2)
outputBlock.Text &= vbCrLf
For Each dinosaur As String In dinosaurs
outputBlock.Text &= dinosaur & vbCrLf
Next
input = New String() {"Tyrannosaurus", _
"Deinonychus", _
"Velociraptor"}
outputBlock.Text += String.Format(vbLf & "InsertRange(3, input)") & vbCrLf
dinosaurs.InsertRange(3, input)
outputBlock.Text &= vbCrLf
For Each dinosaur As String In dinosaurs
outputBlock.Text &= dinosaur & vbCrLf
Next
outputBlock.Text += String.Format(vbLf & "output = dinosaurs.GetRange(2, 3).ToArray") & vbCrLf
Dim output() As String = dinosaurs.GetRange(2, 3).ToArray()
outputBlock.Text &= vbCrLf
For Each dinosaur As String In output
outputBlock.Text &= dinosaur & vbCrLf
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
using System;
using System.Collections.Generic;
public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
string[] input = { "Brachiosaurus",
"Amargasaurus",
"Mamenchisaurus" };
List<string> dinosaurs = new List<string>(input);
outputBlock.Text += String.Format("\nCapacity: {0}", dinosaurs.Capacity) + "\n";
outputBlock.Text += "\n";
foreach (string dinosaur in dinosaurs)
{
outputBlock.Text += dinosaur + "\n";
}
outputBlock.Text += "\nAddRange(dinosaurs)" + "\n";
dinosaurs.AddRange(dinosaurs);
outputBlock.Text += "\n";
foreach (string dinosaur in dinosaurs)
{
outputBlock.Text += dinosaur + "\n";
}
outputBlock.Text += String.Format("\nRemoveRange(2, 2)") + "\n";
dinosaurs.RemoveRange(2, 2);
outputBlock.Text += "\n";
foreach (string dinosaur in dinosaurs)
{
outputBlock.Text += dinosaur + "\n";
}
input = new string[] { "Tyrannosaurus",
"Deinonychus",
"Velociraptor"};
outputBlock.Text += String.Format("\nInsertRange(3, input)") + "\n";
dinosaurs.InsertRange(3, input);
outputBlock.Text += "\n";
foreach (string dinosaur in dinosaurs)
{
outputBlock.Text += dinosaur + "\n";
}
outputBlock.Text += String.Format("\noutput = dinosaurs.GetRange(2, 3).ToArray()") + "\n";
string[] output = dinosaurs.GetRange(2, 3).ToArray();
outputBlock.Text += "\n";
foreach (string dinosaur in output)
{
outputBlock.Text += dinosaur + "\n";
}
}
}
/* 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
*/
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
See Also