StructuralComparisons.StructuralEqualityComparer Vlastnost

Definice

Získá předdefinovaný objekt, který porovnává dva objekty pro strukturální rovnost.

public:
 static property System::Collections::IEqualityComparer ^ StructuralEqualityComparer { System::Collections::IEqualityComparer ^ get(); };
public static System.Collections.IEqualityComparer StructuralEqualityComparer { get; }
static member StructuralEqualityComparer : System.Collections.IEqualityComparer
Public Shared ReadOnly Property StructuralEqualityComparer As IEqualityComparer

Hodnota vlastnosti

Předdefinovaný objekt, který se používá k porovnání dvou objektů kolekce pro strukturální rovnost.

Poznámky

IEqualityComparer Když je objekt vrácen touto vlastností předán metodě porovnání rovnosti objektu kolekce, například Array.IStructuralEquatable.Equals(Object, IEqualityComparer) nebo Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer), je volána jeho IEqualityComparer.Equals metoda pro každý člen pole nebo pro každou komponentu řazené kolekce členů. Tato implementace Equals metody se chová následovně, když porovnává každou položku objektu kolekce s odpovídající položkou jiného objektu kolekce:

  • Pokud jsou nullobě položky , považuje tyto dvě položky za stejné.

  • Pokud je jedna položka null, ale druhá ne, považuje tyto dvě položky za nerovné.

  • Pokud první položku v porovnání lze přetypovat na IStructuralEquatable objekt (jinými slovy, pokud se jedná o objekt kolekce, který implementuje IStructuralEquatable rozhraní), volá metodu IStructuralEquatable.Equals .

  • Pokud první položku v porovnání nelze přetypovat na IStructuralEquatable objekt (jinými slovy, pokud se nejedná o objekt kolekce, který implementuje IStructuralEquatable rozhraní), volá metodu položky Equals .

Platí pro

Viz také