equals();方法比較的是兩個對象的內容是否相同。為什么在Object類里面比較兩個引用對象時,比較的卻是對象的引用是否指向同一塊地址?必須要重寫equals();方法
????????????????Dog?dog=new?Dog(); Dog?dog2=new?Dog(); if(dog.equals(dog2)){ System.out.println("兩個對象是相同的"); }else{ System.out.println("兩個對象是不同的"); }
????????????????Dog?dog=new?Dog(); Dog?dog2=new?Dog(); if(dog.equals(dog2)){ System.out.println("兩個對象是相同的"); }else{ System.out.println("兩個對象是不同的"); }
2016-05-15
舉報
2016-05-15
如果沒有重寫equals方法比較的是對象的地址,對于Object來說對象有什么屬性可以比較???就是最底層的內存地址嘛,重寫equals挺簡單的,使用eclipse的sourse的自動創建equals方法按鈕,再選擇需要什么屬性即可
2016-05-15
==與equals()區別
==: 判斷兩個字符串在內存中首地址是否相同,即判斷是否是同一個字符串對象
equals(): 比較存儲在兩個字符串對象中的內容是否一致
我覺得?。簝蓚€字符可能相同可能不同,是絕對的!
兩條狗肯定不是相同的哇!初學僅供參考!