StringBuilder Class in Java

Last Updated : 10 Jan 2026

Java StringBuilder class is used to create mutable (modifiable) String. The Java StringBuilder class is same as StringBuffer class except that it is non-synchronized. It is available since JDK 1.5.

Import Statement for StringBuilder Class

The StringBuilder class belongs to the java.lang package that is automatically imported in every Java program. Therefore, no explicit import statement is required to use StringBuilder.

Syntax

The below syntax demonstrating directly use of StringBuilder in your program without adding any import statement:

Constructors of StringBuilder Class

The StringBuilder class provides multiple constructors to create mutable string objects with different initial capacities or values.

1. StringBuilder() Constructor

This constructor creates an empty StringBuilder object with a default initial capacity of 16 characters.

Syntax:

It has the following syntax:

It is useful when you do not know the initial content size and want a flexible buffer.

2. StringBuilder(String str) Constructor

This constructor creates a StringBuilder object initialized with the specified string.

Syntax:

It has the following syntax:

3. StringBuilder(int length) Constructor

This constructor creates an empty StringBuilder object with the specified initial capacity.

Syntax:

It has the following syntax:

It is helpful when the required capacity is known in advance to improve performance.

Methods of StringBuilder Class

The following table shows the commonly used method of StringBuilder class:

MethodDescription
public StringBuilder append(String s)It is used to append the specified string with this string. The append() method is overloaded like append(char), append(boolean), append(int), append(float), append(double) etc.
public StringBuilder insert(int offset, String s)It is used to insert the specified string with this string at the specified position. The insert() method is overloaded like insert(int, char), insert(int, boolean), insert(int, int), insert(int, float), insert(int, double) etc.
public StringBuilder replace(int startIndex, int endIndex, String str)It is used to replace the string from specified startIndex and endIndex.
public StringBuilder delete(int startIndex, int endIndex)It is used to delete the string from specified startIndex and endIndex.
public StringBuilder reverse()It is used to reverse the string.
public int capacity()It is used to return the current capacity.
public void ensureCapacity(int minimumCapacity)It is used to ensure the capacity at least equal to the given minimum.
public char charAt(int index)It is used to return the character at the specified position.
public int length()It is used to return the length of the string i.e. total number of characters.
public String substring(int beginIndex)It is used to return the substring from the specified beginIndex.
public String substring(int beginIndex, int endIndex)It is used to return the substring from the specified beginIndex and endIndex.

Java StringBuilder Examples

Let's see the examples of different methods of StringBuilder class.

1. StringBuilder append() method

The StringBuilder append() method concatenates the given argument with this String.

The following example demonstrates the use of append() method.

Output:

Hello Java

2. StringBuilder insert() method

The StringBuilder insert() method inserts the given string with this string at the given position.

The following example demonstrates the use of insert() method.

Output:

HJavaello

3. StringBuilder replace() method

The StringBuilder replace() method replaces the given string from the specified beginIndex and endIndex.

The following example demonstrates the use of replace() method.

Output:

HJavalo

4. StringBuilder delete() method

The delete() method of StringBuilder class deletes the string from the specified beginIndex to endIndex.

The following example demonstrates the use of delete() method.

Output:

Hlo

5. StringBuilder reverse() method

The reverse() method of StringBuilder class reverses the current string.

The following example demonstrates the use of reverse() method.

Output:

olleH

6. StringBuilder capacity() method

The capacity() method of StringBuilder class returns the current capacity of the Builder. The default capacity of the Builder is 16. If the number of character increases from its current capacity, it increases the capacity by (oldcapacity*2)+2. For example if your current capacity is 16, it will be (16*2)+2=34.

The following example demonstrates the use of capacity() method.

Output:

16
16
34

7. StringBuilder ensureCapacity() method

The ensureCapacity() method of StringBuilder class ensures that the given capacity is the minimum to the current capacity. If it is greater than the current capacity, it increases the capacity by (oldcapacity*2)+2. For example if your current capacity is 16, it will be (16*2)+2=34.

The following example demonstrates the use of ensureCapacity() method.

Output:

16
16
34
34
70