最近我遇到了以下問題:
如果給定的值落在值的專用範圍內,我想顯示一些特殊的內容。 由於在開始我的應用程序之前我不知道這個範圍如何看起來像或我需要檢查哪些值,我使用Dictionary來將valueranges讀作鍵並將輸出讀爲值。
爲了使字典正常工作,我需要重寫equals和hash代碼函數,並且在這裏問題開始了。
我如何可以生成一個散列碼,這樣,如果我的字典有生成值範圍的哈希碼
//This is pseudo code
[0|10]->Low
[11|50]->Medium
[51-100]->High
,我查詢2,我的字典返回我Low
我解決這是簡單地重寫的GetHashCode的函數的方式Object購買總是返回-1,所以在任何情況下都需要調用equals方法。這聽起來不是一個好主意,但卻是我想到的唯一解決方案。
還有什麼方法可以將hashcodes的想法映射到值範圍,如果是的話,那會是什麼樣子?
答案的代碼語言也沒關係,因爲我更感興趣的一般方法,然後在語言實現