Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

List<T>.Contains-Methode

Bestimmt, ob sich ein Element in List<T> befindet.

Namespace:  System.Collections.Generic
Assembly:  mscorlib (in mscorlib.dll)
public bool Contains(
	T item
)

Parameter

item
Typ: T
Das in der List<T> zu suchende Objekt. Der Wert kann für Verweistypen null sein.

Rückgabewert

Typ: System.Boolean
true , wenn sich item in List<T> befindet; andernfalls false.

Implementiert

ICollection<T>.Contains(T)

Diese Methode bestimmt die Gleichheit mithilfe des Standardgleichheitsvergleichs, wie durch die Implementierung des Objekts der IEquatable<T>.Equals-Methode für T definiert (der Typ des Wertes in der Liste.

Diese Methode führt eine lineare Suche durch. Daher ist diese Methode ein O(n)-Vorgang, wobei n für den Count steht.

Das folgende Beispiel enthält eine Liste komplexer Objekt vom Typ Box. Die Box-Klasse implementiert die IEquatable<T>.Equals-Methode, damit zwei Felder als gleich angesehen werden, wenn ihre Dimensionen diegleichen sind. In diesem Beispiel gibt die Contains-Methode true zurück, da ein Feld, das über die angegebenen Dimensionen verfügt, bereits in der Auflistung ist.


using System;
using System.Collections.Generic;

class Program
{
    static void Main(string[] args)
    {
        List<Box> boxes = new List<Box>();

        boxes.Add(new Box(8, 8, 4));
        boxes.Add(new Box(8, 4, 8));
        boxes.Add(new Box(8, 6, 4));

        if (boxes.Contains(new Box(8, 6, 4)))
        {
            Console.WriteLine("An equal box is already in the collection.");
        }
        else
        {
            Console.WriteLine("Box can be added.");
        }

	//Outputs "An equal box is already in the collection."
    }
}

public class Box : IEquatable<Box>
{

    public Box(int h, int l, int w)
    {
        this.Height = h;
        this.Length = l;
        this.Width = w;
    }
    public int Height { get; set; }
    public int Length { get; set; }
    public int Width { get; set; }

    public bool Equals(Box other)
    {
        if (this.Height == other.Height && this.Length == other.Length
            && this.Width == other.Width)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Portable Klassenbibliothek

Unterstützt in: Portable Klassenbibliothek

.NET für Windows Store-Apps

Unterstützt in: Windows 8

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)

Community-Beiträge

HINZUFÜGEN
© 2013 Microsoft. Alle Rechte vorbehalten.