總結,爲何要重寫hashset的hashcode()和equals()?

  1. 看了很是多博客,怕本身忘記了,通俗易懂的總結以下code

     

    本人總結下:對象

    重寫前,比較地址,hashcode方法若是相等多是同一個對象,因此再用equals再比內存地址內存

    重寫後,比較值,重寫hashCode方法後,值相同的不一樣對象返回的是一樣的哈希碼,可是值不一樣的對象可能也會有相同的哈希碼,因此再用重寫的equals方法比值博客

     

    重寫前不符合人的思考(若是直接只用equals效率過低,hash比對比較快,最後使用equals方法以防萬無一失)hash

相關文章
相關標籤/搜索