Java程式新增字元到字串
Java 提供了多種方法來向字串新增字元。我們可以根據需要在開頭、結尾或任何位置新增字元。
在本文中,我們將看到三種實現此目的的方法:
使用“+”運算子
使用StringBuffer和StringBuilder類的相關方法
使用substring()方法
方法1:使用“+”運算子
在本節中,我們將使用連線運算子將字元新增到字串。
示例
public class Main { public static void main(String[] args) { String st = "Tutorial"; char chartoadd = 's'; st = st + chartoadd; // performing concatenation System.out.println(st); } }
輸出
Tutorials
方法2:使用StringBuilder和StringBuffer類的相關方法
要理解本節內容,您需要對Java的StringBuilder和StringBuffer類有一個基本的瞭解。
字串在Java中是不可變的,但為了修改字串,Java 提供了兩個內建類StringBuilder和StringBuffer。兩者都具有insert()和append()方法,可用於向字串新增字元。
insert()
它存在於這兩個類中,但略有不同,如果我們使用StringBuilder類,則必須建立StringBuilder類的物件;如果我們使用StringBuffer類,則必須建立StringBuffer類的物件。
insert()方法允許我們在指定位置新增字元。
語法
public StringBuilder insert(index, char); public StringBuffer insert(index, char);
引數
index - 您要新增字元的字串中的位置。
char - 您要新增的字元。
對於StringBuffer
示例
public class Main{ public static void main(String []args){ String st="oint"; char chartoadd='P'; StringBuffer new_st=new StringBuffer(st); new_st.insert(0,chartoadd); System.out.println(new_st); } }
輸出
Point
“point”是字串的名稱,“P”是我們想要在第0個位置新增的字元。首先,我們建立了一個名為“new_st”的StringBuffer類物件,然後我們使用insert()方法,索引值為0,變數名儲存字元“P”。
對於StringBuilder
示例
public class Main{ public static void main(String []args){ String st="Tutorial"; char chartoadd='s'; StringBuilder new_st=new StringBuilder(st); new_st.insert(8,chartoadd); System.out.println(new_st); } }
輸出
Tutorials
“Tutorial”是給定字串的名稱,“s”是我們想要在第8個位置新增的字元。首先,我們建立了一個名為“new_st”的StringBuilder類物件,然後我們使用insert()方法,索引值為8,變數名儲存字元“s”。
append()
它也存在於這兩個類中,但略有不同,如果我們使用StringBuilder類,則必須建立StringBuilder類的物件;如果我們使用StringBuffer類,則必須建立StringBuffer類的物件。
append()方法將在字串末尾新增字元。
語法
public StringBuffer append(char); public StringBuilder append(char);
引數
char - 您要新增的字元。
對於StringBuffer
public class Main{ public static void main(String []args){ String st="Simpl"; char chartoadd='y'; StringBuffer new_st=new StringBuffer(st); new_st.append(chartoadd); System.out.println(new_st); } }
輸出
Simply
在這裡,我們建立了一個名為“new_st”的StringBuffer類物件,然後我們使用append()方法,變數名儲存字元“y”。請記住,append()方法不需要像insert()方法那樣的索引值。
對於StringBuilder
示例
public class Main{ public static void main(String []args){ String st="Tutorial"; char chartoadd='s'; StringBuilder new_st=new StringBuilder(st); new_st.append(chartoadd); System.out.println(new_st); } }
輸出
Tutorials
我們建立了一個名為“new_st”的StringBuilder類物件,然後我們使用append()方法,變數名儲存字元“s”。
方法3:使用String類的substring()方法
Java的String類有一個名為substring()的方法,可用於向給定字串新增字元。
語法
old_string.substring(start_pos, target_pos);
引數
start_pos - 舊字串的起始索引
target_pos - 您要新增字元的索引。
示例
public class Main{ public static void main(String []args){ String st="Tutorialsoint"; char chartoadd='P'; String new_st= st.substring(0,9) + chartoadd + st.substring(9); System.out.println(new_st); } }
輸出
TutorialsPoint
我們建立了“new_st”作為新的連線字串。首先,我們從第0個位置到第8個位置拆分了舊字串“st”,然後我們在第9個位置添加了字元。最後,我們添加了其餘的字串。
結論
我們已經看到了向字串新增字元的不同方法。我們可以使用連線運算子、insert()和append()方法。StringBuilder類比StringBuffer類更快,但為了執行緒安全,StringBuffer更安全。如果我們想在特定位置新增字元,那麼我們可以首選insert()方法;如果要在字串末尾新增字元,則使用append()方法。最後,我們瞭解了substring()方法的使用,該方法需要將舊字串分成不同的部分。