導航:首頁 > 編程語言 > 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兩個字元串連接相關的資料

熱點內容
grx編譯器編譯失敗 瀏覽:691
linux使用的資料庫伺服器地址 瀏覽:689
我的世界電腦版如何伺服器加光影 瀏覽:654
簡便演算法45乘239 瀏覽:435
踏花行APP哪裡下載好 瀏覽:604
物理伺服器釋放是什麼意思 瀏覽:166
魔獸世界密語命令 瀏覽:174
如何打開密碼壓縮包 瀏覽:670
如何開啟root伺服器 瀏覽:891
漢諾塔演算法java 瀏覽:469
成都程序員上班視頻 瀏覽:479
pythonweb圖書 瀏覽:280
python同時遍歷兩個數組 瀏覽:760
我的世界生存模式挖掉命令方塊 瀏覽:108
pythoninstagram 瀏覽:713
androidn下載地址 瀏覽:488
pythonre小括弧 瀏覽:916
apktool反編譯dex閃退 瀏覽:503
怎麼和女生聊天用啥app 瀏覽:208
如何創造一個好玩的伺服器 瀏覽:6