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