課程
/后端開發(fā)
/Java
/Java入門第三季
老師說重寫這個函數(shù)是為了比較courses里面的name和輸入的name的哈希值是否相同,但是這兩個是不同對象中的name,哈希值怎么會相同呢?
2015-12-06
源自:Java入門第三季 6-2
正在回答
本來HashSet下的contains()方法是比較student.courses下對象的哈希碼與course2的哈希碼是否一樣,這當(dāng)然是不一樣的所以返回的是false。
而重寫之后,是比較student.courses下對象name的哈希碼與course2.name的哈希碼是否一樣,它們是一樣的,所以返回的是true。
是比較對象的哈希嗎是否相同,對象的哈希碼相同然后在用equals方法
哈希值是固定的
主要name的值一樣,哈希值就一樣
舉報
Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧
2 回答hashcode問題
2 回答關(guān)于輸出結(jié)果是hashcode
2 回答關(guān)于重寫hashCode()和equals()方法的疑惑?
1 回答equals和hashCode重寫問題
1 回答hashcode方法重寫的疑問
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-04-11
本來HashSet下的contains()方法是比較student.courses下對象的哈希碼與course2的哈希碼是否一樣,這當(dāng)然是不一樣的所以返回的是false。
而重寫之后,是比較student.courses下對象name的哈希碼與course2.name的哈希碼是否一樣,它們是一樣的,所以返回的是true。
2016-02-28
是比較對象的哈希嗎是否相同,對象的哈希碼相同然后在用equals方法
2015-12-06
哈希值是固定的
主要name的值一樣,哈希值就一樣