gethashcode

    0熱度

    1回答

    出於興趣如何IEqualityComparer的具體實現的GetHashCode工作? 我問的原因是我使用linq來聯合兩個集合,並且當只有左集合有一個項GetHashCode被調用兩次。除此之外,如果兩個集合都有一行,則會調用四次。 這是粗糙的打字,但你會明白的。 GetHashCode被調用兩次,我猜對於listOne中的一個項目是兩次? 例如 var listOne = new List<S

    9熱度

    3回答

    實現自定義類實例比較時,我們是否應該覆蓋Equals和GetHashCode屬性? 在下面的代碼中我有一個類的集合。類別A由ID,類別B-由Code進行比較。 using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; namespace ConsoleAppli

    1熱度

    2回答

    我想弄清楚,當你從一個NSObject驅動對象調用GetHashCode()時,MonoTouch是否正確調用底層的「散列」消息。對任意對象(在我的例子中爲NSAttributedString)的GetHashCode()(在MD的程序集瀏覽器中)的實現進行快速檢查,它調用object.InternalGetHashCode(),所以我懷疑它不會調用「hash」。 「哈希」似乎也沒有公開,這讓我懷

    2熱度

    3回答

    我提出的解決方案涉及到很多代碼,但假設您安裝了SqLite,您可以將它全部複製並粘貼到VS測試解決方案中,並且您應該可以自己運行測試。 由於我一直在努力使用Nhibernate來處理對象標識與對象相等和數據庫標識問題,我已經閱讀了各種帖子。但是,我無法清楚地瞭解如何正確設置與集合一起的對象標識。基本上,大問題是,一旦一個對象被添加到一個集合中,它的身份(由GetHashCode派生)就不能改變。實

    11熱度

    4回答

    我宣佈的代碼,像這樣 int hashcode = "apple".GetHashCode(); 在我的電腦,在工作中計算機C#線,和一個朋友的電腦,結果是1657858284.在開發服務器,結果是1548091822.是否有我告訴項目總是讓GetHashCode()產生1657858284的方式,而不管它在哪個服務器上? 更多注意事項 起初,我注意到版本有所不同... 1657858284結

    0熱度

    4回答

    可能重複: Can I depend on the values of GetHashCode() to be consistent? 如果我使用Object.GetHashCode()方法在兩個系統間/ framework版本的,我保證可以得到相同的輸入相同的值?換句話說,它的價值是否成爲持久數據的關鍵? 注:我不在乎這個問題的衝突。 作爲獎勵,我保證在Mono和Microsoft.Net中獲得

    10熱度

    4回答

    嗨,我有一個具有6個字符串屬性的類。一個獨特的對象對於這些字段中的至少一個將具有不同的值 要實現IEqualityComparer的GetHashCode函數,我將連接所有6個屬性並在結果字符串上調用GetHashCode。 我有以下疑點: 是否需要調用GetHashCode的一個獨特的價值? 對六個屬性的連接操作是否會使比較變慢? 我應該使用其他方法嗎?

    7熱度

    2回答

    我已經實現了一個類,該類超載==和!=運營商。 這似乎工作正常;但是,我收到警告'type' defines operator == or operator != but does not override Object.Equals(object o)。 好吧,所以我實現了Equals。但是現在我收到了警告'type' defines operator == or operator != but

    0熱度

    2回答

    我重寫了我的類之一的Equals方法。在該方法中,我檢查每對字典的與另一個實例的字典中的平等,像下面這樣做 public override bool Equals (object obj) { ... // compare to make sure all <key, value> pair of this.dict have // the match

    1熱度

    3回答

    我對C#中的Equals和GetHashCode的默認行爲有點困惑。 說我有兩個班,從另外一個推導: public abstract class Question { public string QuestionText { get; set; } public override bool Equals(obj