第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么要重寫equals方法呢

新實例化的課程對象本來就不在courseToSelect集合中啊,contains方法當然會返回false,為什么非得重寫equals方法讓contains返回true呢?

正在回答

2 回答

要看比較的目的了,是比較對象(引用)還是比較實際值了。

默認equals在比較倆個對象的時候,是看他們是否指向同一個地址的。

但有時候我們希望比較倆個對象的某些屬性值是否相同,如果相同的話就認為他們的equals為true。

比如:

Student?s1?=?new?Student(1,”name1”);
Student?s2?=?new?Student(1,”name1”);

如果用默認的equals比較s1和s2 的話,結果肯定為false,但是我們只是希望

比較他們的name是否相同,這個時候就需要重寫equals方法了。


1 回復 有任何疑惑可以回復我~
#1

fenkapian 提問者

非常感謝!
2016-06-12 回復 有任何疑惑可以回復我~

其實我感覺不用contains方法,直接用course2.name==name ?這個方法還簡單粗暴

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么要重寫equals方法呢

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號