IStructuralEquatable 接口在 C# 中有什么作用?


IStructuralEquatable 接口定义了支持将对象进行结构相等性的比较的方法,这意味着两个对象相等,因为它们具有相等的值。

它包括以下两种方法 -

序号方法和说明
1Equals(Object, IEqualityComparer)
该方法确定对象是否在结构上等于当前实例。
2GetHashCode(IEqualityComparer)
该方法获得当前实例的哈希码。

下面我们来看一个示例,其中我创建了元组对象,并使用了 IstructuralEquatable 接口

创建元组 -

var tupleOne = Tuple.Create(26.3, Double.NaN, 35.6);
var tupleOne = Tuple.Create(26.3, Double.NaN, 35.6);

现在通过使用 IstructuralEquatable.Equals 调用默认比较器来检查相等性。

IStructuralEquatable chk = tupleOne;
Console.WriteLine(chk.Equals(tupleTwo, EqualityComparer<object>.Default));

更新时间: 2020 年 6 月 20 日

299 次浏览

开启你的 职业生涯

完成课程获取认证

开始学习
广告
© . All rights reserved.