1)dusting1。等于(string2)
2)STR1==STR2。
Java字符串比較是==比較引用,等于比較值。但是,不同聲明方法字符串的比較結果也不同。
例如:stringSTR1=newstring(“a”)
stringSTR2=newstring(“a”)
STR1==STR2outputfalse
STR1。等于(STR2)outputtrue
如果這樣聲明
stringSTR1=“a”
stringSTR2=“a”
STR1==STR2outputtrue
STR1。Equals(STR2)outputtrue
這是因為Equals方法最初是一個被引用的字符串類,它在實現時重寫該方法。
第一個聲明方法是聲明兩個對象,比較時使用“==”,它引用,并輸出false。因為它們的值是相同的,所以當使用equals時,它會進行比較,并輸出true。
在第二種情況下,不是因為比較方法與第一種不同,而是因為聲明方法不同。當聲明第二個聲明方法時,會出現堆或堆棧共享現象。也就是說,如果它被聲明為class屬性,它將檢查堆棧中是否有與當前聲明具有相同結構的字符串。如果有,則直接將地址指向現有的內存地址。方法中聲明的局部變量的工作方式相同,只是它是堆棧共享。
分享標題:java的基本數據類型有哪些java如何比較字符串?-創(chuàng)新互聯
分享URL:http://www.chinadenli.net/article6/dpcoog.html
成都網站建設公司_創(chuàng)新互聯,為您提供云服務器、網站改版、手機網站建設、網站設計公司、靜態(tài)網站、全網營銷推廣
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯