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+ 浏览量

开启你的职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.