第四章 ==和equals()的區別

Mr-Wanter發表於2018-07-12

==
基本資料型別判斷的是基本資料型別的值
兩端資料型別不同,也可以返回true(int 65 == char ‘A’)
比較的是常量區的值
引用資料型別比較的是地址值

equals
只能處理引用型別變數
所有類都繼承Object類,而Object類的equals方法底層也是==實現的,所以比較的仍是地址值
String、包裝類、File類、Date類等都會重寫equals方法,實現比較兩個物件的內容是否相等




字串記憶體結構1


字串的記憶體結構2

相關文章