Java 中如何将 String 转换为 StringBuilder 以及反之?

java 8object oriented programmingprogramming

String  类型是 Java 中的一个类,用于表示一组字符。Java 中的字符串是不可变的,一旦创建字符串,就无法更改其值。

由于字符串是不可变的,如果您尝试重新分配字符串的值。它的引用将指向新的String对象,从而在内存中留下一个未使用的String。

Java在需要对字符串进行大量修改的地方提供了StringBuffer类来替代String。

您可以反复修改/操作StringBuffer的内容,而不会留下大量新的未使用对象。

StringBuilder类是从Java 5开始引入的,StringBuffer和StringBuilder之间的主要区别在于StringBuilder的方法不是线程安全的(不是同步的)。

建议尽可能使用StringBuilder,因为它比StringBuffer更快。但是,如果需要线程安全,最佳选择是 StringBuffer 对象。

将字符串转换为 StringBuilder

StringBuilder 类的 append() 方法接受字符串值并将其添加到当前 对象

要将字符串值转换为 StringBuilder 对象,只需使用 append() 方法将其附加即可。

示例

在下面的 Java 程序中,我们将字符串数组转换为单个 StringBuilder 对象。

public class StringToStringBuilder {
   public static void main(String args[]) {
      String strs[] = {"Arshad", "Althamas", "Johar", "Javed", "Raju", "Krishna" };
      StringBuilder sb = new StringBuilder();
      sb.append(strs[0]);
      sb.append(" "+strs[1]);
      sb.append(" "+strs[2]);
      sb.append(" "+strs[3]);
      sb.append(" "+strs[4]);
      sb.append(" "+strs[5]);
      System.out.println(sb.toString());
   }
}

输出

Arshad Althamas Johar Javed Raju Krishna

将 StringBuilder 转换为 String

StringBuilder 类的 toString() 方法重新运行当前对象的 String 值。要将 StringBuilder 转换为 String 值,只需对其调用 toString() 方法即可。

示例

在下面的 Java 程序中,我们使用 StringBuilder 的 toString() 方法将字符串数组转换为单个字符串。

public class StringToStringBuilder {
   public static void main(String args[]) {
      String strs[] = {"Arshad", "Althamas", "Johar", "Javed", "Raju", "Krishna" };
      StringBuilder sb = new StringBuilder();
      sb.append(strs[0]);
      sb.append(" "+strs[1]);
      sb.append(" "+strs[2]);
      sb.append(" "+strs[3]);
      sb.append(" "+strs[4]);
      sb.append(" "+strs[5]);
      String singleString = sb.toString();
      System.out.println(singleString);
   }
}

输出

Arshad Althamas Johar Javed Raju Krishna

相关文章