我想了解应该使用IEqualityComparer
和IEquatable
的场景。两者的MSDN文档看起来非常相似。
发布于 2012-02-17 02:29:30
IEqualityComparer<T>
是一个对象接口,它对T
类型的两个对象执行比较。
IEquatable<T>
用于类型为T
的对象,以便它可以将自己与相同类型的另一个对象进行比较。
发布于 2012-02-17 02:31:09
IEqualityComparer用于在外部实现两个对象的相等性,例如,如果您想为两个类型定义一个比较器,但没有源,或者两个对象之间的相等性只在一些有限的上下文中有意义。
IEquatable是由对象本身(被比较相等的对象)实现的。
发布于 2012-02-17 02:29:54
一个比较两个T
。另一个可以与其他T
比较。通常,您只需要一次使用一个,而不是两个都使用。
https://stackoverflow.com/questions/9316918
复制相似问题