String is Immutable in C# and Java, Use of String builder in C#
In C# a string is immutable and cannot be altered. When you
alter a string, you are actually creating a new string, which in turn uses more
memory than necessary, creates more work for the garbage collector and makes the
code execution run slower. When a string is being modified frequently it begins
to be a burden on performance .This seemingly innocent example below creates
three string objects.
string msg = "Your total is ";//String
object 1 is created
msg += "$500 "; //String
object 2 is created
msg += DateTime.Now(); //String object
3 is created
StringBuilder is a string-like object whose value is a
mutable sequence of characters. The value is said to be mutable because it can
be modified once it has been created by appending, removing, replacing, or
inserting characters. You would modify the above code like this.
StringBuilder sb = new StringBuilder();
sb.Append("Your total is ");
sb.Append("$500 ");
sb.Append(DateTime.Now());
The individual characters in the value of a StringBuilder
can be accessed with the
Chars
property. Index positions start from zero.
No comments:
Post a Comment
Comments Welcome