java 判斷兩個(gè)對象是否為同一個(gè)對象實(shí)例代碼
java 判斷兩個(gè)對象是否為同一個(gè)對象
用“==”比較的是引用的地址,用equals比較的就是值。那我們new兩個(gè)相同的對象什么屬性都一樣,為什么編譯的時(shí)候不相同,這是因?yàn)槲覀冋{(diào)用的是父類也就是Object的equals方法,這里我們就需要重寫這個(gè)equals方法。
public class Test5 { public static void main(String[] args) { User mUser1 = new User("zhangsan", "123456"); User mUser = new User("zhangsan", "123456"); System.out.println(mUser == mUser1); System.out.println(mUser.equals(mUser1)); } } class User { String name = ""; String pwd = ""; @Override//重寫父類的equals方法 public boolean equals(Object obj) { if (obj instanceof User) { User mUser = (User) obj; if (mUser.name.equals(name)&&mUser.pwd.equals(pwd)) { return true; } } return super.equals(obj); } public User(String name, String pwd) { super(); this.name = name; this.pwd = pwd; } }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
SpringBoot中AOP的動態(tài)匹配和靜態(tài)匹配詳解
這篇文章主要介紹了SpringBoot中AOP的動態(tài)匹配和靜態(tài)匹配詳解,在創(chuàng)建代理的時(shí)候?qū)δ繕?biāo)類的每個(gè)連接點(diǎn)使用靜態(tài)切點(diǎn)檢查,如果僅通過靜態(tài)切點(diǎn)檢查就可以知道連接點(diǎn)是不匹配的,則在運(yùn)行時(shí)就不再進(jìn)行動態(tài)檢查了,需要的朋友可以參考下2023-09-09SpringBoot集成Access?DB實(shí)現(xiàn)數(shù)據(jù)導(dǎo)入和解析
microsoft?office?access是由微軟發(fā)布的關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),它結(jié)合了?microsoft?jet?database?engine?和?圖形用戶界面兩項(xiàng)特點(diǎn),是一種關(guān)系數(shù)據(jù)庫工具,本文給大家介紹了SpringBoot集成Access?DB實(shí)現(xiàn)數(shù)據(jù)導(dǎo)入和解析,需要的朋友可以參考下2024-11-11應(yīng)用市場中Java攔截器和切面的使用實(shí)例詳解
這篇文章主要介紹了應(yīng)用市場中Java攔截器和切面的使用實(shí)例詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01Java實(shí)現(xiàn)注冊郵箱激活賬戶實(shí)例代碼
本篇文章主要介紹了Java實(shí)現(xiàn)郵箱激活賬戶實(shí)例代碼,這里整理了詳細(xì)的代碼,具有一定的參考價(jià)值,有需要的小伙伴可以參考下。2017-07-07JVM教程之Java代碼編譯和執(zhí)行的整個(gè)過程(二)
這篇文章主要介紹了JVM學(xué)習(xí)筆記第二篇,關(guān)于Java代碼編譯和執(zhí)行的整個(gè)過程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03