淺析Java中String與StringBuffer拼接的區(qū)別
學(xué)習(xí)筆記:
1、String拼接會創(chuàng)建一個新的String對象,存儲拼接后的字符串;
StringBuffer拼接是直接在本身拼接,會即時刷新。
2.String只能拼接String類型的字符串;
StringBuffer能夠拼接所有的類型的值。
public class Test {
public static void main(String[] args) {
String str1="abc";
String str2="cba";
//使用Stirng的concat拼接
String s1=str1.concat(str2);
String s2=str2.concat(str1);
System.out.println("使用concat互相拼接:"+s1+":"+s2);
//使用StringBuffer的append拼接
StringBuffer sb1=new StringBuffer(str1);
StringBuffer sb2=new StringBuffer(str2);<br>
StringBuffer s3=sb1.append(sb2);
StringBuffer s4=sb2.append(sb1);
System.out.println("使用StringBuffer互相拼接:"+s3+":"+s4);<br>
System.out.println("s3.append(s3):"+s3.append(s3)); //輸出結(jié)果為:s3.append(s3):abccbaabccba
System.out.println("s3:"+s3); //輸出結(jié)果為:s3:abccbaabccba
System.out.println(s1.concat(s2)==s1);//false,拼接會重新創(chuàng)建一個String(String的長度是不可變的)
System.out.println(s3.append(s1)==s3);//true,StringBuffer是對自己進(jìn)行操作會即時刷新
<br>
int num=123;
/*str1.concat(num);---此處報錯*/
StringBuffer s5=s4.append(num);
System.out.println("s5:"+s5);
}
}
輸出結(jié)果是:
使用concat互相拼接1:abccba:cbaabc
使用StringBuffer互相拼接1:abccba:cbaabccba
s3.append(s3):abccbaabccba s3:abccbaabccba false true s5:cbaabccba123
以上所述是小編給大家介紹的Java中String與StringBuffer拼接的區(qū)別,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
spring事務(wù)的propagation傳播屬性示例詳解
這篇文章主要為大家介紹了spring事務(wù)的propagation傳播屬性示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
Fluent Mybatis零xml配置實現(xiàn)復(fù)雜嵌套查詢
本文主要介紹了Fluent Mybatis零xml配置實現(xiàn)復(fù)雜嵌套查詢,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08
SpringBoot3集成Swagger3的詳細(xì)教程
Swagger 3(OpenAPI 3.0)提供了更加強大和靈活的API文檔生成能力,本教程將指導(dǎo)您如何在Spring Boot 3項目中集成Swagger3,并使用Knife4j作為UI界面,需要的朋友可以參考下2024-03-03

