Java 向字符串添加字符

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() 方法,将 index 值设为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

我们创建了一个StringBuilder类的名为“new_st”的对象,然后我们使用了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()方法需要将旧字符串分成不同的部分。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程