equals()中if條件的順序問題。
視頻中給出的代碼如下:
if(this?==?obj) ????return?ture; if(obj?==?null) ????return?false;
這里我有點(diǎn)想不明白為什么是這樣的順序。
如果第二個(gè)if成立,第一個(gè)就沒有必要判斷吧?
同樣,如果第一個(gè)if成立,第二個(gè)也沒有必要判斷吧?
求位大神解釋一下,在下現(xiàn)在這里謝謝了。
視頻中給出的代碼如下:
if(this?==?obj) ????return?ture; if(obj?==?null) ????return?false;
這里我有點(diǎn)想不明白為什么是這樣的順序。
如果第二個(gè)if成立,第一個(gè)就沒有必要判斷吧?
同樣,如果第一個(gè)if成立,第二個(gè)也沒有必要判斷吧?
求位大神解釋一下,在下現(xiàn)在這里謝謝了。
2016-07-08
舉報(bào)
2016-08-12
this代表什么?
2016-08-08
你進(jìn)入了一個(gè)邏輯的死胡同,看待問題不全面,并不是非黑即白,java是面向?qū)ο蟮恼Z(yǔ)言,它有很多種情況,需要逐一偵查,做到不疏漏,按邏輯順序進(jìn)行判斷;如果第一個(gè)if語(yǔ)句成立’return'會(huì)立即終止當(dāng)前的判斷,返回結(jié)果,
如果不是則繼續(xù)判斷,寫程序是要經(jīng)過大量 思考的結(jié)果。希望對(duì)你有用,
2016-07-09
如果第一個(gè)if不成立呢……