Java中==與equals的區(qū)別小結(jié)
public class Compare { /** * == 與 equals()區(qū)別 */ public static void main(String[] args) { String s1 = new String("Hello,World!"); //創(chuàng)建兩個String型對象引用; String s2 = new String("Hello,World!"); String s3 = s1; //將s1對象引用賦予s3 System.out.println("s2==s3的運算結(jié)果為:" + (s2==s3)); //地址不一樣 System.out.println("s1==s3的運算結(jié)果為:" + (s1==s3)); //地址一樣 System.out.println("s2.equals(s3)的運算結(jié)果為:"+(s2.equals(s3)));//內(nèi)容一樣 } }
s2==s3的運算結(jié)果為:false
s1==s3的運算結(jié)果為:true
s2.equals(s3)的運算結(jié)果為:true
總結(jié):
== 與 equals()比較的內(nèi)容是不同的,equals()方式是String類中的方法,它用于比較兩個對象引用所指的內(nèi)容是否相等;而 == 比較的是兩個對象引用的地址是否相等。由于s1與s2是兩個不同的對象引用,兩者在內(nèi)存中的位置不同,而String s3 =s1語句,將s1的引用賦給s3,所以s1與s3這兩個對象引用是相等的。
相關(guān)文章
MyBatis的注解使用、ORM層優(yōu)化方式(懶加載和緩存)
這篇文章主要介紹了MyBatis的注解使用、ORM層優(yōu)化方式(懶加載和緩存),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10關(guān)于線程池創(chuàng)建、執(zhí)行、銷毀的原理及分析
這篇文章主要介紹了關(guān)于線程池創(chuàng)建、執(zhí)行、銷毀的原理及分析,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-05-05spring boot中使用@Async實現(xiàn)異步調(diào)用任務(wù)
本篇文章主要介紹了spring boot中使用@Async實現(xiàn)異步調(diào)用任務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02springboot項目引入外部jar包的詳細(xì)圖文教程
在項目中有時候需要引入外部jar包,啟動運行,下面這篇文章主要給大家介紹了關(guān)于springboot項目引入外部jar包的詳細(xì)圖文教程,需要的朋友可以參考下2023-09-09mybatis-plus 表名添加前綴的實現(xiàn)方法
這篇文章主要介紹了mybatis-plus 表名添加前綴的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08使用@Value為靜態(tài)變量導(dǎo)入并使用導(dǎo)入的靜態(tài)變量進行初始化方式
這篇文章主要介紹了使用@Value為靜態(tài)變量導(dǎo)入并使用導(dǎo)入的靜態(tài)變量進行初始化方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02解決JavaWeb-file.isDirectory()遇到的坑問題
JavaWeb開發(fā)中,使用`file.isDirectory()`判斷路徑是否為文件夾時,需要特別注意:該方法只能判斷已存在的文件夾,若路徑不存在,無論其實際是否應(yīng)為文件夾,均會返回`false`,為了解決這個問題,可以采用正則表達式進行判斷,但要求路徑字符串的結(jié)尾必須添加反斜杠(\)2025-02-02