更改 Java 中 StringBuffer 物件的預設容量


為了更改 StringBuffer 物件的預設容量,我們使用 ensureCapacity() 方法。如果當前容量小於傳遞的引數,則會分配具有更大容量的新內部陣列。

新容量是 minimumCapacity 引數和舊容量的兩倍加 2 中較大的那個。如果最小容量為非正數,則它將保持休眠狀態並且不執行任何操作。

宣告 - java.lang.StringBuffer.ensureCapacity() 方法的宣告如下所示 -

public void ensureCapacity(int minimumCapacity)

我們來看看 ensureCapacity() 方法的工作原理

示例

 線上演示

public class Example {
   public static void main(String[] args) {
      StringBuffer sb = new StringBuffer("Hello");
      System.out.println(sb);
      System.out.println("Original capacity : "+sb.capacity());
      sb.ensureCapacity(29); // the (twice of old capacity + 2) argument is greater
      System.out.println("New capacity : "+sb.capacity());
      System.out.println();
      StringBuffer sb1 = new StringBuffer("Hi");
      System.out.println(sb1);
      System.out.println("Original capacity : "+sb1.capacity());
      sb1.ensureCapacity(40); // the minimumCapacity argument is greater
      System.out.println("New capacity : "+sb1.capacity());
   }
}

輸出

Hello
Original capacity : 21
New capacity : 44
Hi
Original capacity : 18
New capacity : 40

更新於: 2020 年 6 月 26 日

399 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告