課程
/后端開發(fā)
/Java
/Java入門第三季
在重寫方法中明明只判斷name,難道是key的查詢壓根不調(diào)用eq和ha這兩個(gè)方法嗎?
2018-07-26
源自:Java入門第三季 6-4
正在回答
key是String類型的,value是Student類型的,是自定義的。Java中自帶的對(duì)象類型(例如String,StringBuilder等)都已經(jīng)被重寫過equals()方法和hashcode()方法等,在java api里的equals方法中,說明了覆蓋了Object中的equals方法,所以有沒有重寫equ和ha對(duì)它就沒有影響了,人家自身就重寫過了。
而自定義的對(duì)象(Student),則需要自己手動(dòng)去重寫,這又不是java自帶的,想得到理想的比較結(jié)果就得重寫了。
在進(jìn)行值的比較之前,不也是有對(duì)Key比較的嗎?然后重寫了方法。可是key這個(gè)比較完全不受影響
不是很理解你的描述。只判斷name就是對(duì)鍵值對(duì)的值進(jìn)行比較,就不用理會(huì)鍵的判斷處理啊。。
舉報(bào)
Java中你必須懂得常用技能,不容錯(cuò)過的精彩,快來加入吧
3 回答為什么containskey()不用重寫equals方法呢
2 回答為什么要重寫equals方法呢
3 回答第一個(gè)輸入方法的Scanner.close()會(huì)對(duì)下一個(gè)輸入方法的Scanner.next()有影響,為什么?
2 回答為什么不能重寫contains中的equals的方法
2 回答為什么在Course類中重寫equals方法,而不是在別的地方呢?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2018-08-29
key是String類型的,value是Student類型的,是自定義的。Java中自帶的對(duì)象類型(例如String,StringBuilder等)都已經(jīng)被重寫過equals()方法和hashcode()方法等,在java api里的equals方法中,說明了覆蓋了Object中的equals方法,所以有沒有重寫equ和ha對(duì)它就沒有影響了,人家自身就重寫過了。
而自定義的對(duì)象(Student),則需要自己手動(dòng)去重寫,這又不是java自帶的,想得到理想的比較結(jié)果就得重寫了。
2018-07-27
在進(jìn)行值的比較之前,不也是有對(duì)Key比較的嗎?然后重寫了方法。可是key這個(gè)比較完全不受影響
2018-07-27
不是很理解你的描述。只判斷name就是對(duì)鍵值對(duì)的值進(jìn)行比較,就不用理會(huì)鍵的判斷處理啊。。