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

屬性值

預先定義的物件,用來比較兩個集合物件的結構是否相等。

備註

IComparer當這個屬性傳回的物件傳遞至集合物件的相等比較方法時,例如 Array.IStructuralEquatable.Equals(Object, IEqualityComparer)Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer) ,會針對陣列的每個成員或 Tuple 的每個元件呼叫其 IEqualityComparer.Equals 方法。 當方法的每個專案與另一個集合物件的對應專案進行比較時,此方法的 Equals 實作行為如下:

  • 如果這兩個專案都是 null ,則會將兩個專案視為相等。

  • 如果一個專案為 Null,但另一個專案不是,則會將兩個專案視為不相等。

  • 如果比較中的第一 IStructuralEquatable 個專案可以轉換成物件 (換句話說,如果它是實作介面) 的 IStructuralEquatable 集合物件,則會呼叫 IStructuralEquatable.Equals 方法。

  • 如果比較中的第一個專案無法轉換成 IStructuralEquatable 物件 (,換句話說,如果不是實 IStructuralEquatable 作介面) 的 Equals 集合物件,則會呼叫專案的 方法。

適用於

另請參閱