Java StringBuffer 類



StringBuffer 類介紹

Java StringBuffer 類是可變的字元序列。StringBuffer 可輕鬆修改字串的內容。它提供了許多用於操作字串的實用程式函式。StringBuffer 的操作具有同步特性,建議在多執行緒環境中使用。如果不需要同步,可以使用替代 API StringBuilder。

StringBuffer 類宣告

以下是java.lang.StringBuffer 類的宣告:

public final class StringBuffer
   extends Object
      implements Serializable, CharSequence

StringBuffer 類建構函式

以下是 StringBuffer 類的建構函式列表。

序號 建構函式及描述
1

StringBuffer()

構造一個字串生成器,其中不包含任何字元,初始容量為 16 個字元。

2

StringBuffer(CharSequence seq)

構造一個字串生成器,其包含與指定的 CharSequence 相同的字元。

3

StringBuffer(int capacity)

構造一個字串生成器,其中不包含任何字元,初始容量由 capacity 引數指定。

4

StringBuffer(String str)

構造一個初始化為指定字串內容的字串生成器。

StringBuffer 類方法

以下是 StringBuffer 類的列表。每個方法都有多個示例來演示該方法的功能。

序號 方法及描述
1 StringBuffer append()

此方法將給定的字串引數附加到序列中。

2 StringBuffer appendCodePoint(int codePoint)

此方法將 codePoint 引數的字串表示形式附加到此序列。

3 int capacity()

此方法返回當前容量。

4 char charAt(int index)

此方法返回此序列中指定索引處的 char 值。

5 int codePointAt(int index)

此方法返回指定索引處的字元(Unicode 程式碼點)。

6 int codePointBefore(int index)

此方法返回指定索引之前的字元(Unicode 程式碼點)。

7 int codePointCount(int beginIndex, int endIndex)

此方法返回此序列指定文字範圍內的 Unicode 程式碼點數。

8 StringBuffer delete(int start, int end)

此方法刪除此序列子字串中的字元。

9 StringBuffer deleteCharAt(int index)

此方法刪除此序列中指定位置處的字元。

10 void ensureCapacity(int minimumCapacity)

此方法確保容量至少等於指定的最小值。

11 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)

字元從此序列複製到目標字元陣列 dst。

12 int indexOf(String str)

此方法返回此字串中指定子字串第一次出現的索引。

13 StringBuffer insert()

此方法將給定引數的字串表示形式插入到此序列中。

14 int lastIndexOf(String str)

此方法返回此字串中指定子字串最右邊出現的索引。

15 int length()

此方法返回長度(字元數)。

16 int offsetByCodePoints(int index, int codePointOffset)

此方法返回此序列中從給定索引偏移 codePointOffset 程式碼點的索引。

17 StringBuffer replace(int start, int end, String str)

此方法用指定字串中的字元替換此序列子字串中的字元。

18 StringBuffer reverse()

此方法導致此字元序列被序列的反向序列替換。

19 void setCharAt(int index, char ch)

將指定索引處的字元設定為 ch。

20 void setLength(int newLength)

此方法設定字元序列的長度。

21 CharSequence subSequence(int start, int end)

此方法返回一個新的字元序列,它是此序列的子序列。

22 String substring(int start)

此方法返回一個新的字串,其中包含當前包含在此字元序列中的字元的子序列。

23 String toString()

此方法返回表示此序列中資料的字串。

24 void trimToSize()

此方法嘗試減少字元序列使用的儲存空間。

繼承的方法

此類繼承自以下類的方法:

  • java.lang.Object
  • java.lang.CharSequence

示例:將布林值附加到 StringBuffer

以下示例顯示了 Java StringBuffer append(Boolean b) 方法的用法。在這裡,我們使用字串名稱“tuts”例項化一個 StringBuffer 物件“buff”。然後,我們使用帶有布林引數“true”的“buff”物件呼叫 append() 方法。返回值將是附加的字串名稱“tuts true”。類似地,我們使用字串名稱“abcd”和布林引數“false”演示了另一個案例。

package com.tutorialspoint;

public class StringBufferDemo {

   public static void main(String[] args) {

      StringBuffer stringBuffer = new StringBuffer("tuts ");
      System.out.println("buffer = " + stringBuffer);

      // appends the boolean argument as string to the string stringBuffer
      stringBuffer.append(true);
      
      // print the string stringBuffer after appending
      System.out.println("After append = " + stringBuffer);

      stringBuffer = new StringBuffer("abcd ");
      System.out.println("stringBuffer = " + stringBuffer);
      
      // appends the boolean argument as string to the string stringBuffer    
      stringBuffer.append(false);
      
      // print the string stringBuffer after appending
      System.out.println("After append = " + stringBuffer);
   }
}

輸出

讓我們編譯並執行上述程式,這將產生以下結果:

buffer = tuts
After append = tuts true
stringBuffer = abcd
After append = abcd false
廣告