Ce sujet n'a pas encore été évalué - Évaluez ce sujet

Collection.Contains, méthode

Détermine si un élément est dans Collection.

Espace de noms: System.Collections.ObjectModel
Assembly : mscorlib (dans mscorlib.dll)

public bool Contains (
	T item
)
public final boolean Contains (
	T item
)
public final function Contains (
	item : T
) : boolean
Non applicable.

Paramètres

item

Objet à trouver dans Collection. La valeur peut être référence Null (Nothing en Visual Basic) pour les types référence.

Valeur de retour

true si item existe dans Collection ; sinon, false.

Si l'objet Collection est créé à l'aide du constructeur par défaut, cette méthode détermine l'égalité en utilisant le comparateur d'égalité par défaut EqualityComparer.Default pour T, le type de valeurs dans la liste. Si le type T n'implémente pas l'interface IEqualityComparer, alors Equals est utilisé.

Si l'objet Collection est créé en passant un IList au constructeur, alors Contains sera déterminé par le IEqualityComparer utilisé par ce IList.

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

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

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

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 est pris en charge sur Windows Vista, Microsoft Windows XP SP2 et Windows Server 2003 SP1.

.NET Framework

Prise en charge dans : 3.0, 2.0

.NET Compact Framework

Prise en charge dans : 2.0

XNA Framework

Prise en charge dans : 1.0
Cela vous a-t-il été utile ?
(1500 caractères restants)

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
© 2013 Microsoft. Tous droits réservés.