簡體   English   中英

為什么IEqualityComparer <T> 等於方法有兩個參數?

[英]Why does IEqualityComparer<T> Equals method take two arguments?

我不明白為什么Equals方法需要(T x,T y)。 在實例上調用該方法時,您是否已經沒有一個實例可以與之進行比較? 與GetHashCode相同-如果我已經在現有實例上調用對象實例,為什么它需要一個對象實例作為參數?

如果我調用a.GetHashCode(b)會發生什么? 使用哪一個?

IEqualityComparer<T>接口用於比較器對象。 因此,不...您將沒有一個實例作為實現的一部分。

您可能會想到IEquatable<T> ,它是由要比較的對象的類型實現的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM