課程
/后端開(kāi)發(fā)
/Java
/Java入門(mén)第三季
如果只重載ID或者name中的一個(gè)的時(shí)候,返回的是true,但是重載兩個(gè)的時(shí)候就會(huì)返回false了,這是為什么呢?
2016-04-12
源自:Java入門(mén)第三季 6-1
正在回答
用eclipse自動(dòng)生成equals方法,默認(rèn)的就是object形式,即是
public boolean equals(object obj){
return(this==obj); } ?就是你只打一個(gè)勾,選擇一個(gè)參數(shù)的時(shí)候。但是當(dāng)你選擇兩個(gè)參數(shù)的時(shí)候 ,就是重寫(xiě)了equals的方法,你去看看string時(shí)候的equal和object的區(qū)別,就會(huì)明白
看來(lái)是我沒(méi)有表述清楚。我的意思是用eclipse自動(dòng)生成equals方法,生成的時(shí)候把ID,name兩個(gè)屬性都打上勾,然后再main函數(shù)中判斷的時(shí)候,比如說(shuō),輸入名字判斷課程是否存在,按道理應(yīng)該是輸出true的,但是會(huì)輸出false。? 如果在生成equals方法的時(shí)候僅僅打一個(gè)勾,即只選擇ID或者name,那么判斷的時(shí)候便能輸出true.
重載兩個(gè)參數(shù)我覺(jué)得你在比較的時(shí)候兩個(gè)就都要比較用&&
舉報(bào)
Java中你必須懂得常用技能,不容錯(cuò)過(guò)的精彩,快來(lái)加入吧
1 回答在Course類(lèi)中定義name和id用的是private
2 回答為什么我重寫(xiě)了equals方法結(jié)果還是返回false呢
2 回答equals()不就是比較內(nèi)容嗎?為什么會(huì)返回false
1 回答為什么在Course中重新定義equals方法?
4 回答Course 重寫(xiě)equals
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢(xún)優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-04-18
用eclipse自動(dòng)生成equals方法,默認(rèn)的就是object形式,即是
public boolean equals(object obj){
return(this==obj); } ?就是你只打一個(gè)勾,選擇一個(gè)參數(shù)的時(shí)候。但是當(dāng)你選擇兩個(gè)參數(shù)的時(shí)候 ,就是重寫(xiě)了equals的方法,你去看看string時(shí)候的equal和object的區(qū)別,就會(huì)明白
2016-04-12
看來(lái)是我沒(méi)有表述清楚。我的意思是用eclipse自動(dòng)生成equals方法,生成的時(shí)候把ID,name兩個(gè)屬性都打上勾,然后再main函數(shù)中判斷的時(shí)候,比如說(shuō),輸入名字判斷課程是否存在,按道理應(yīng)該是輸出true的,但是會(huì)輸出false。? 如果在生成equals方法的時(shí)候僅僅打一個(gè)勾,即只選擇ID或者name,那么判斷的時(shí)候便能輸出true.
2016-04-12
重載兩個(gè)參數(shù)我覺(jué)得你在比較的時(shí)候兩個(gè)就都要比較用&&