After reading this article, you will learn the points, as shown below.
- Introduction
- How to concatenate the strings
- When to use String Builder class
- Methods of String Builder class
- Examples
- Interview Question
Introduction
As we all know that the strings are immutable, because after a string is stored in the memory, the memory, which is allocated for the string, cannot change.
If the string changed, a new memory location is needed to store the changed string. In these circumstances, we use StringBuilder class with a string type.
For example, let’s look at the example given below for clear understanding
- Int amount=26;
- String s1=”My age is ”;
- S1=string.concat (s1,amount.ToString());
In the code given above, s1 is created and it changed, so old and new s1 will be stored temporarily in memory. The old s1 will be cleared from the memory by a garbage collection process. If our Application frequently changes the string, then obviously we may hold large memory in use, while waiting for the next garbage collection to clean up the memory.
Concatenating strings
The string.Concat method creates a new string and concatenates with the result of the ToString method and then stores the result in the new memory location, which is then linked to s.
This means, we have two strings when we need only one. Also, in real time scenario, we may work with multiple strings. Let’s say that we had a situation to concatenate the strings in a loop. This situation can be both a performance and memory problem
Thus, to overcome this issue, we need to implement String.Builder class in System.Text namespace.
When to use StringBuilder Class
If we concatenate the string in for loop, where a large number of strings are stored in the memory, then it is recommended to use StringBuilder Class.
StringBuilder also acts like the collection classes. It allocates an initial value of 16 characters and if your string becomes larger than this, it automatically grows to accommodate the string size.
We can implement string builder, as shown below.
- int amount =21;
- StringBuilder sb= new StringBuilder("My Balance is ");
- sb.append(amount);

Join the conversation! Your thoughts help the community grow.