Поделиться через


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 .

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

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