在需要對資料進行大量修改時,你會在Java中選擇String還是StringBuffer?


String 型別是 Java 中的一個類,用於表示一組字元。Java 中的字串是不可變的,一旦建立,就不能更改 String 的值。

由於 String 是不可變的,如果您嘗試重新賦值 String 的值,它的引用將指向新的 String 物件,從而在記憶體中留下未使用的 String。

Java 提供了 StringBuffer 類來替代需要對字元 String 進行大量修改的情況下的 String。

您可以反覆修改/操作 StringBuffer 的內容,而不會留下許多新的未使用的物件。

StringBuilder 類從 Java 5 開始引入,StringBuffer 和 StringBuilder 之間的主要區別在於 StringBuilder 的方法不是執行緒安全的(不同步的)。

建議儘可能使用 StringBuilder,因為它比 StringBuffer 快。但是,如果需要執行緒安全,則最佳選擇是 StringBuffer 物件。

將 String 轉換為 StringBuilder

StringBuilder 類的 append() 方法接受一個 String 值並將其新增到當前物件

要將 String 值轉換為 StringBuilder 物件,只需使用 append() 方法將其附加。

示例

在下面的 Java 程式中,我們將一個 String 陣列轉換為單個 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

更新於:2019年8月5日

567 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.