古詩詞大全網 - 成語解釋 - equals和==的區別是什麽?

equals和==的區別是什麽?

equals和==的區別是功能不同,定義不同,運行速度不同。

1、功能不同

"=="是判斷兩個變量或實例是不是指向同壹個內存空間。

"equals"是判斷兩個變量或實例所指向的內存空間的值是不是相同。

2、定義不同

"equals"在JAVA中是壹個方法。

"=="在JAVA中只是壹個運算符合。

3、運行速度不同

"=="比"equals"運行速度快,因為"=="只是比較引用。

"equals"比"=="運行速度要慢。

equals和==簡介:

==既可以比較基本類型也可以比較引用類型 ,對於基本類型就是比較值,對於引用類型比較的就是內存地址,equals是屬於java.lang.Ojbect類裏的方法,如果該方法沒有被重寫過,默認也是==。

我們可以看到string類的equals方法是被重寫過的,而且string類在日常開發中用的比較多,久而久之,就形成了equals是比較值得錯誤觀點,具體要看這裏有沒有重寫Ojbect的hashCode方法和equals方法來判斷。