Monday, June 20, 2016

String and String Builder

Objects of StringBuilder are mutable where as string objects are immutable. As StringBuilder object are mutable, they offer better performance than string objects of type “System. String”. StringBuilder class is present in System.Text and String      present in System.

Eg : String
String userString = "C#";
         userString += 
" Video";
         userString += 
" Tutorial";
         userString += 
" for";
         userString += 
" beginners";


The above code has 5 objects and stored in heap.
Immutable means, once a string object is created it cannot be changed.
Every time we concatenate the new string object (userString) it will create a new object. 

Eg: StringBuilder
StringBuilder  userStringBuilder = new StringBuilder("C#");
                   userStringBuilder.Append(
" Video");
                   userStringBuilder.Append(
" Tutorial");
                   userStringBuilder.Append(
" for");
                   userStringBuilder.Append(
" beginners");


StringBuilder objects are mutable; they can be changed in place without creating another new object.
The above code has only one object.

No comments:

Post a Comment