国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

千鋒教育Java入門全套視頻教程(java核心技術,適合java零基礎,Java

2023-07-19 17:45 作者:小滑頭鬼之孫  | 我要投稿

Object中的hashCode()

hashCode方法用來返回對象的哈希值,提供該方法是為了支持哈希表,例如HashMap,HashTable等。


源碼中的hashCode其實是JVM啟動的一個參數(shù),每一個分支對應一個生成策略,通過-XX:hashCode可以切換hashCode的生成策略。

下面驗證第2種生成策略,用軟件idea輸入?yún)?shù)-XX:hashCode=2,可以看到輸出結果正是1。


hashCode()和equals()

hashCode()和equals()用來標識對象,兩個方法協(xié)同工作用來判斷兩個對象是否相等。對象通過調(diào)用 Object.hashCode()生成哈希值,由于不可避免地會存在哈希值沖突的情況 因此hashCode 相同時 還需要再調(diào)用 equals 進行一次值的比較,但是若hashCode不同,將直接判定兩個對象不同,跳過 equals ,這加快了沖突處理效率。

如果兩個對象的equals的結果是相等的,則兩個對象的 hashCode 的返回結果也必須是相同的。

任何時候重寫equals,都必須同時重寫hashCode。


千鋒教育Java入門全套視頻教程(java核心技術,適合java零基礎,Java的評論 (共 條)

分享到微博請遵守國家法律
安康市| 长岛县| 云安县| 屏东市| 平安县| 萨迦县| 竹溪县| 通州市| 离岛区| 乐山市| 弋阳县| 灵石县| 平利县| 东丰县| 东乡族自治县| 甘谷县| 五华县| 长春市| 剑川县| 兴国县| 民丰县| 镇平县| 新宾| 孝感市| 沙雅县| 海阳市| 工布江达县| 诸城市| 汉阴县| 辉南县| 公安县| 沈丘县| 贡觉县| 东乡| 安庆市| 宁远县| 杂多县| 高碑店市| 理塘县| 嘉峪关市| 仪陇县|