Java中的 StringBuilder ensureCapacity() 示例
StringBuilder 类的ensureCapacity(int minimumCapacity)方法帮助我们确保容量至少等于作为参数传递给方法的指定 minimumCapacity。
- 如果 StringBuilder 的当前容量小于参数 minimumCapacity,则分配一个具有更大容量的新内部数组。
- 如果 minimumCapacity 参数大于旧容量的两倍加 2,则新容量等于 minimumCapacity 否则新容量等于旧容量的两倍加上 2。
- 如果作为参数传递的 minimumCapacity 参数不是正数,则此方法不执行任何操作。
句法:
public void ensureCapacity(int minimumCapacity)
参数:此方法接受一个参数minimumCapacity表示您想要的最小所需容量。
返回值:此方法不返回任何内容。
下面的程序演示了 StringBuilder 类的 ensureCapacity() 方法:
示例 1:
在这个程序中,等于 18 的 minimumCapacity 参数小于旧容量的两倍,加上等于 34 的 2,那么新容量等于 34。
// Java program to demonstrate
// the ensureCapacity() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuilder object
StringBuilder str = new StringBuilder();
// print string capacity
System.out.println("Before ensureCapacity "
+ "method capacity = "
+ str.capacity());
// apply ensureCapacity()
str.ensureCapacity(18);
// print string capacity
System.out.println("After ensureCapacity"
+ " method capacity = "
+ str.capacity());
}
}
输出:
Before ensureCapacity method capacity = 16
After ensureCapacity method capacity = 34
示例 2:
在这个程序中,等于 44 的 minimumCapacity 参数大于旧容量的两倍,加上等于 34 的 2,那么新容量等于 34。
// Java program to demonstrate
// the ensureCapacity() Method.
class GFG {
public static void main(String[] args)
{
// create a StringBuilder object
StringBuilder str = new StringBuilder();
// print string capacity
System.out.println("Before ensureCapacity"
+ " method capacity = "
+ str.capacity());
// apply ensureCapacity()
str.ensureCapacity(44);
// print string capacity
System.out.println("After ensureCapacity"
+ " method capacity = "
+ str.capacity());
}
}
输出:
Before ensureCapacity method capacity = 16
After ensureCapacity method capacity = 44
参考:
https://docs.oracle.com/javase/10/docs/api/java Java)