更改 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 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告