List(Of T).Remove Method
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Removes the first occurrence of a specific object from the List(Of T).
Assembly: mscorlib (in mscorlib.dll)
Parameters
- item
- Type: T
The object to remove from the List(Of T). The value can be Nothing for reference types.
Return Value
Type: System.Booleantrue if item is successfully removed; otherwise, false. This method also returns false if item was not found in the List(Of T).
Implements
ICollection(Of T).Remove(T)This method determines equality using the default equality comparer EqualityComparer(Of T).Default for T, the type of values in the list.
This method performs a linear search; therefore, this method is an O(n) operation, where n is Count.
The following code example demonstrates Remove method. Several properties and methods of the List(Of T) generic class are used to add, insert, and search the list. After these operations, the list contains a duplicate. The Remove method is used to remove the first instance of the duplicate item, and the contents are displayed. The Remove method always removes the first instance it encounters.
Imports System.Collections.Generic Public Class Example Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) Dim dinosaurs As New List(Of String) outputBlock.Text &= String.Format(vbLf & "Capacity: {0}", dinosaurs.Capacity) & vbCrLf dinosaurs.Add("Tyrannosaurus") dinosaurs.Add("Amargasaurus") dinosaurs.Add("Mamenchisaurus") dinosaurs.Add("Deinonychus") dinosaurs.Add("Compsognathus") outputBlock.Text &= vbCrLf For Each dinosaur As String In dinosaurs outputBlock.Text &= dinosaur & vbCrLf Next outputBlock.Text &= String.Format(vbLf & "Capacity: {0}", dinosaurs.Capacity) & vbCrLf outputBlock.Text &= String.Format("Count: {0}", dinosaurs.Count) & vbCrLf outputBlock.Text &= vbLf & String.Format("Contains(""Deinonychus"": {0}", _ dinosaurs.Contains("Deinonychus")) & vbCrLf outputBlock.Text &= String.Format(vbLf & "Insert(2, ""Compsognathus"")") & vbCrLf dinosaurs.Insert(2, "Compsognathus") outputBlock.Text &= vbCrLf For Each dinosaur As String In dinosaurs outputBlock.Text &= dinosaur & vbCrLf Next outputBlock.Text &= String.Format(vbLf & "dinosaurs(3): {0}", dinosaurs(3)) & vbCrLf outputBlock.Text &= vbLf & "Remove(""Compsognathus"")" & vbCrLf dinosaurs.Remove("Compsognathus") outputBlock.Text &= vbCrLf For Each dinosaur As String In dinosaurs outputBlock.Text &= dinosaur & vbCrLf Next dinosaurs.TrimExcess() outputBlock.Text &= vbLf & "TrimExcess()" & vbCrLf outputBlock.Text &= String.Format("Capacity: {0}", dinosaurs.Capacity) & vbCrLf outputBlock.Text &= String.Format("Count: {0}", dinosaurs.Count) & vbCrLf dinosaurs.Clear() outputBlock.Text &= vbLf & "Clear()" & vbCrLf outputBlock.Text &= String.Format("Capacity: {0}", dinosaurs.Capacity) & vbCrLf outputBlock.Text &= String.Format("Count: {0}", dinosaurs.Count) & vbCrLf End Sub End Class ' This code example produces the following output: ' 'Capacity: 0 ' 'Tyrannosaurus 'Amargasaurus 'Mamenchisaurus 'Deinonychus 'Compsognathus ' 'Capacity: 8 'Count: 5 ' 'Contains("Deinonychus"): True ' 'Insert(2, "Compsognathus") ' 'Tyrannosaurus 'Amargasaurus 'Compsognathus 'Mamenchisaurus 'Deinonychus 'Compsognathus ' 'dinosaurs(3): Mamenchisaurus ' 'Remove("Compsognathus") ' 'Tyrannosaurus 'Amargasaurus 'Mamenchisaurus 'Deinonychus 'Compsognathus ' 'TrimExcess() 'Capacity: 5 'Count: 5 ' 'Clear() 'Capacity: 5 'Count: 0