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()方法的使用,該方法需要將舊字串分成不同的部分。

更新於: 2024年5月31日

10K+ 瀏覽量

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告