StructuralComparisons.StructuralEqualityComparer 屬性

定義

取得預先定義的物件,這個物件會比較兩個物件的結構是否相等。

C#
public static System.Collections.IEqualityComparer StructuralEqualityComparer { get; }

屬性值

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

備註

IEqualityComparer當這個屬性傳回的對象傳遞至集合物件的相等比較方法時,例如 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 方法。

適用於

產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

另請參閱