The ensureCapacity(int minimumCapacity) method of StringBuilder class helps us to ensures the capacity is at least equal to the specified minimumCapacity passed as the parameter to the method.
- If the current capacity of StringBuilder is less than the argument minimumCapacity, then a new internal array is allocated with greater capacity.
- If the minimumCapacity argument is greater than twice the old capacity, plus 2 then new capacity is equal to minimumCapacity else new capacity is equal to twice the old capacity, plus 2.
- If the minimumCapacity argument passed as parameter is not-positive, this method takes no action.
Syntax:
public void ensureCapacity(int minimumCapacity)
Parameters: This method accepts one parameter minimumCapacity represents the minimum desired capacity you want.
Return Value: This method do not return anything.
Below programs demonstrate the ensureCapacity() method of StringBuilder Class:
Example 1:
In this program minimumCapacity argument which is equal to 18 is less than twice the old capacity, plus 2 which is equal to 34 then new capacity is equal to 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()); } } |
Output:
Before ensureCapacity method capacity = 16 After ensureCapacity method capacity = 34
Example 2:
In this program minimumCapacity argument which is equal to 44 is greater than twice the old capacity, plus 2 which is equal to 34 then new capacity is equal to 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()); } } |
Output:
Before ensureCapacity method capacity = 16 After ensureCapacity method capacity = 44
Reference:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#ensureCapacity(int)