次の方法で共有


StructuralComparisons.StructuralEqualityComparer プロパティ

定義

2 つのオブジェクトの構造上の等価性を比較する定義済みのオブジェクトを取得します。

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

プロパティ値

2 つのコレクション オブジェクトの構造上の等価性を比較するのに使用される定義済みのオブジェクト。

注釈

IEqualityComparerこのプロパティによって返されるオブジェクトが、 や Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer)などのArray.IStructuralEquatable.Equals(Object, IEqualityComparer)コレクション オブジェクトの等値比較メソッドに渡されると、そのIEqualityComparer.Equalsメソッドは配列のメンバーごとに、またはタプルの各コンポーネントに対して呼び出されます。 このメソッドの実装は、 Equals コレクション オブジェクトの各項目を別のコレクション オブジェクトの対応する項目と比較すると、次のように動作します。

  • 両方の項目が の場合、 null2 つの項目が等しいと見なされます。

  • 1 つの項目が null で、もう一方の項目が null でない場合、2 つの項目は等しくないと見なされます。

  • 比較の最初の項目をオブジェクトに IStructuralEquatable キャストできる場合 (つまり、インターフェイスを実装 IStructuralEquatable するコレクション オブジェクトの場合)、 メソッドを IStructuralEquatable.Equals 呼び出します。

  • 比較の最初の項目をオブジェクトに IStructuralEquatable キャストできない場合 (つまり、インターフェイスを実装 IStructuralEquatable するコレクション オブジェクトでない場合)、項目の Equals メソッドを呼び出します。

適用対象

こちらもご覧ください