Collection<T>.Remove(T) Méthode

Définition

Supprime la première occurrence d’un objet spécifique de Collection<T>.

C#
public bool Remove (T item);

Paramètres

item
T

Objet à supprimer de Collection<T>. La valeur peut être null pour les types référence.

Retours

true si item est bien supprimé ; sinon, false. Cette méthode retourne également false si item est introuvable dans le Collection<T> d'origine.

Implémente

Exemples

L’exemple de code suivant illustre de nombreuses propriétés et méthodes de Collection<T>. L’exemple de code crée une collection de chaînes, utilise la Add méthode pour ajouter plusieurs chaînes, affiche et Countrépertorie les chaînes. L’exemple utilise la IndexOf méthode pour rechercher l’index d’une chaîne et la Contains méthode pour déterminer si une chaîne se trouve dans la collection. L’exemple insère une chaîne à l’aide de la Insert méthode et récupère et définit des chaînes à l’aide de la propriété par défaut Item[] (l’indexeur en C#). L’exemple supprime des chaînes par identité de chaîne à l’aide de la Remove méthode et par index à l’aide de la RemoveAt méthode . Enfin, la Clear méthode est utilisée pour effacer toutes les chaînes de la collection.

C#
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;

public class Demo
{
    public static void Main()
    {
        Collection<string> dinosaurs = new Collection<string>();

        dinosaurs.Add("Psitticosaurus");
        dinosaurs.Add("Caudipteryx");
        dinosaurs.Add("Compsognathus");
        dinosaurs.Add("Muttaburrasaurus");

        Console.WriteLine("{0} dinosaurs:", dinosaurs.Count);
        Display(dinosaurs);

        Console.WriteLine("\nIndexOf(\"Muttaburrasaurus\"): {0}",
            dinosaurs.IndexOf("Muttaburrasaurus"));

        Console.WriteLine("\nContains(\"Caudipteryx\"): {0}",
            dinosaurs.Contains("Caudipteryx"));

        Console.WriteLine("\nInsert(2, \"Nanotyrannus\")");
        dinosaurs.Insert(2, "Nanotyrannus");
        Display(dinosaurs);

        Console.WriteLine("\ndinosaurs[2]: {0}", dinosaurs[2]);

        Console.WriteLine("\ndinosaurs[2] = \"Microraptor\"");
        dinosaurs[2] = "Microraptor";
        Display(dinosaurs);

        Console.WriteLine("\nRemove(\"Microraptor\")");
        dinosaurs.Remove("Microraptor");
        Display(dinosaurs);

        Console.WriteLine("\nRemoveAt(0)");
        dinosaurs.RemoveAt(0);
        Display(dinosaurs);

        Console.WriteLine("\ndinosaurs.Clear()");
        dinosaurs.Clear();
        Console.WriteLine("Count: {0}", dinosaurs.Count);
    }

    private static void Display(Collection<string> cs)
    {
        Console.WriteLine();
        foreach( string item in cs )
        {
            Console.WriteLine(item);
        }
    }
}

/* This code example produces the following output:

4 dinosaurs:

Psitticosaurus
Caudipteryx
Compsognathus
Muttaburrasaurus

IndexOf("Muttaburrasaurus"): 3

Contains("Caudipteryx"): True

Insert(2, "Nanotyrannus")

Psitticosaurus
Caudipteryx
Nanotyrannus
Compsognathus
Muttaburrasaurus

dinosaurs[2]: Nanotyrannus

dinosaurs[2] = "Microraptor"

Psitticosaurus
Caudipteryx
Microraptor
Compsognathus
Muttaburrasaurus

Remove("Microraptor")

Psitticosaurus
Caudipteryx
Compsognathus
Muttaburrasaurus

RemoveAt(0)

Caudipteryx
Compsognathus
Muttaburrasaurus

dinosaurs.Clear()
Count: 0
 */

Remarques

Cette méthode détermine l’égalité à l’aide du comparateur EqualityComparer<T>.Default d’égalité par défaut pour T, le type de valeurs dans la liste.

Cette méthode effectue une recherche linéaire ; par conséquent, le temps d’exécution moyen est proportionnel à Count. Autrement dit, cette méthode est une opération O(n), où n est Count.

Notes pour les héritiers

Les classes dérivées peuvent remplacer RemoveItem(Int32) pour modifier le comportement de cette méthode.

S’applique à

Produit Versions
.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 2.0, 3.0, 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.5, 1.6, 2.0, 2.1
UWP 10.0

Voir aussi