StructuralComparisons.StructuralEqualityComparer Свойство

Определение

Возвращает предопределенный объект, который сравнивает два объекта для структурного равенства.

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

Значение свойства

Предопределенный объект, используемый для сравнения двух объектов коллекции для структурного равенства.

Комментарии

Когда объект, IEqualityComparer возвращаемый этим свойством, передается методу сравнения равенства объекта коллекции, например Array.IStructuralEquatable.Equals(Object, IEqualityComparer) или Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer)его IEqualityComparer.Equals метод вызывается для каждого члена массива или для каждого компонента кортежа. Эта реализация Equals метода ведет себя следующим образом, когда сравнивает каждый элемент объекта коллекции с соответствующим элементом другого объекта коллекции:

  • Если оба элемента являются null, он считает, что два элемента равны.

  • Если один элемент имеет значение NULL, но другой элемент не является, он считает, что два элемента будут неравными.

  • Если первый элемент в сравнении можно привести к IStructuralEquatable объекту (другими словами, если это объект коллекции, реализующий IStructuralEquatable интерфейс), он вызывает IStructuralEquatable.Equals метод.

  • Если первый элемент в сравнении не может быть приведение к IStructuralEquatable объекту (другими словами, если он не является объектом коллекции, реализующим IStructuralEquatable интерфейс), он вызывает метод элемента Equals .

Применяется к

См. также раздел