StructuralComparisons.StructuralEqualityComparer Свойство

Определение

Получает предопределенный объект, выполняющий проверку структурного равенства двух объектов.Gets a predefined object that compares two objects for structural equality.

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

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

Предопределенный объект, который служит для проверки структурного равенства двух объектов коллекции.A predefined object that is used to compare two collection objects for structural equality.

Комментарии

Когда объект, возвращаемый этим свойством, передается методу сравнения на равенство объекта коллекции, Array.IStructuralEquatable.Equals(Object, IEqualityComparer) например Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer)или, IEqualityComparer.Equals его метод вызывается для каждого члена массива или для каждого компонента кортежа. IComparerWhen the IComparer object returned by this property is passed to the equality comparison method of a collection object, such as Array.IStructuralEquatable.Equals(Object, IEqualityComparer) or Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer), its IEqualityComparer.Equals method is called for each member of an array or for each component of a tuple. Эта реализация Equals метода ведет себя следующим образом при сравнении каждого элемента объекта коллекции с соответствующим элементом другого объекта Collection:This implementation of the Equals method behaves as follows when it compares each item of a collection object with the corresponding item of another collection object:

  • Если оба элемента имеют nullзначение, эти два элемента считаются равными.If both items are null, it considers the two items to be equal.

  • Если один элемент имеет значение null, а другой — нет, то эти два элемента считаются неравными.If one item is null but the other item is not, it considers the two items to be unequal.

  • Если первый элемент в сравнении может быть приведен к IStructuralEquatable объекту (иными словами, если это объект коллекции, IStructuralEquatable реализующий интерфейс IStructuralEquatable.Equals ), то вызывается метод.If the first item in the comparison can be cast to an IStructuralEquatable object (in other words, if it is a collection object that implements the IStructuralEquatable interface), it calls the IStructuralEquatable.Equals method.

  • Если первый элемент в сравнении не может быть приведен к IStructuralEquatable объекту (иными словами, если он не является объектом коллекции, IStructuralEquatable реализующим интерфейс), Equals то вызывается метод элемента.If the first item in the comparison cannot be cast to an IStructuralEquatable object (in other words, if it is not a collection object that implements the IStructuralEquatable interface), it calls the item's Equals method.

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

Дополнительно