java中常用的字符串的比較方法(兩種)
比較字符串比較常用的兩個方法是運算符“=”和String的equals方法。
使用“=”比較兩個字符串,是比較兩個對象的的“地址”是否一致,本質(zhì)就是判斷兩個變量是否指向同一個對象,如果是則返回true,否則返回的是false。而String類的equals方法則是比較兩個字符串的內(nèi)容是否一致,返回值也是一個布爾類型。
看下面的代碼:
public class TestString{ public static void main(String[] args){ String str1 = "張三"; String str2 = "張三"; System.out.println(str1 == str2); //返回true System.out.println(str1.equals(str2)); //返回true String str3 = new String("李四"); String str4 = new String("李四"); System.out.println(str3 == str4); //返回false System.out.println(str3.equals(str4)); //返回true } }
結(jié)果輸出:
從上面的代碼也可以看得出來,通過String str = " XXX"方式和通過String str = new String("XXX")方式創(chuàng)建的字符串在計算機堆??臻g里的存儲是不一樣的
現(xiàn)在我也是一個小白,對堆??臻g的理解現(xiàn)在也不是很到位,所以在這里也不好說其中的“玄機”。今天主要是想分享學(xué)習(xí)到的兩種常見的字符串比較方法。
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
ProtoStuff不支持BigDecimal序列化及反序列化詳解
這篇文章主要為大家介紹了ProtoStuff不支持BigDecimal序列化/反序列化,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08java并發(fā)數(shù)據(jù)包Exchanger線程間的數(shù)據(jù)交換器
這篇文章主要為大家介紹了java并發(fā)數(shù)據(jù)包使用數(shù)據(jù)交換器Exchanger來進行線程之間的數(shù)據(jù)交換。有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-03-03使用Nacos實現(xiàn)動態(tài)路由的步驟和代碼示例
這篇文章主要介紹了使用 Nacos 實現(xiàn) Spring Cloud Gateway 的動態(tài)路由,本文給大家介紹了具體的實現(xiàn)步驟和代碼案例,感興趣的小伙伴跟著小編一起來看看吧2024-09-09