導航:首頁 > 編程語言 > java兩個字元串連接

java兩個字元串連接

發布時間:2022-10-25 13:55:09

java怎麼把2個字元串拼接在一起

String類的方法:

①利用運算符"+"

②public String concat(String str)進行字元串的拼接操作

StringBuffer的方法:

①public StringBuffer append(String str)將str添加到當前字元串緩沖區的字元序列的末尾

②public StringBuffer insert(int offset,String str)在當前字元串緩沖區的字元序列的下標

索引offset插入str。如果offset等於舊長度,則str添加在字元串緩沖區的尾部

如圖所示

② Java字元串連接

1. String類是final修飾的不可變類,+號運算,會創建一些對象進行操作。

StringBuffer與StringBuilder,是可改變的對象,每當使用這兩個對象對字元串做操作時, 實際上是在一個對象上操作的,所以速度快 .


2. StringBuilder:線程非安全的

StringBuffer:線程安全的

3. 大量字元串數據時的性能 StringBuilder > StringBuffer >String


使用情況的說明:

1. String + : 適合比較少量的字元串數據拼接

(比如System.out.println("姓名:"+name+"年齡:"+age))


2. StringBuilder : 大量字元串數據, 單線程下使用

(比如,一個main線程里進行,無其他線程)


3.StringBuffer : 大量字元串數據, 多線程下使用

(比如,多個Thread去操作)

③ java 中concat連接兩個字元串,其中一個設為null,那返回的值就是null嗎

不是。

或b任一為null,均會拋出空指針異常;

public String concat(String str) {

int otherLen = str.length();

if (otherLen == 0) {

return this;

}

int len = value.length;

char buf[] = Arrays.Of(value, len + otherLen);

str.getChars(buf, len);

return new String(buf, true);
}

④ java兩個字元串使用+拼接字元串,在內存中是怎樣實現的

你好:c存放內存,str存放內存,之後加好連接後指向一個新的內存存放reslut(str結果),new的話都會在堆中創建,在棧(Stack)中如果數值存在的話,就不會創建了。以下就是說明的+的實現過程,他實際上是new的,所以在堆中會創建,即佔用新的內存,如果str不等於result的話,還會在棧(Stack)中創建。
str += "c";等效於:str = new StringBuffer(str).append("c").toString();
雖然編譯器對字元串加號做了優化,它會用StringBuffer的append方法進行追加。再是通過toString方法轉換成String字元串的。
它與純粹的append方法是不同的:
一是每次都要創建一個StringBuilder對象;
二是每次執行完畢都要調用toString方法將其轉換為字元串。

閱讀全文

與java兩個字元串連接相關的資料

熱點內容
ai文件pdf 瀏覽:905
騰訊雲伺服器掛載混合雲 瀏覽:758
智能小車用什麼單片機 瀏覽:463
java怎麼給窗口關閉 瀏覽:940
列舉51單片機的定址方式 瀏覽:706
剪輯app怎麼寫長篇文字 瀏覽:400
app專屬流量過月租怎麼不更新 瀏覽:654
王者程序員都有誰 瀏覽:76
給牛換腳掌解壓 瀏覽:387
圍棋有多少種演算法 瀏覽:602
unity資源包在哪個文件夾 瀏覽:704
阿里雲伺服器遠程鏈接不成功 瀏覽:482
文件系統pdf 瀏覽:766
原神安卓區服什麼意思 瀏覽:36
貝殼app怎麼線上發布 瀏覽:159
如何挑選安卓系統機頂盒 瀏覽:53
安卓快充使用有什麼注意事項 瀏覽:909
黑馬程序員的雲計算網課 瀏覽:947
endnotestyle文件夾怎麼導入 瀏覽:460
講解少兒編程演講會開頭 瀏覽:424