Whats the use of string builder?



Whats the use of string builder?..

Answer / kishoreg

Since C# strings are immutable, an existing string cannot
be modified. So, if one tries to change a string either
with the concatenation operator (+) or with the Insert,
PadLeft, PadRight, Replace, or SubString methods, an
entirely new string is created—leaving the original string
intact.

Therefore, operations which would alter strings—instead—
cause additional memory to be allocated. Memory is a scarce
resource. And, memory allocations are expensive in terms of
memory and performance. Consequently, sometimes String
class usage should be avoided.

The StringBuilder class is designed for situations when one
needs to work with a single string and make an arbitrary
number of iterative changes to it. Many StringBuilder class
methods are the same as those of the String class. However,
the string content of a StringBuilder class can be changed
without the necessity of allocating additional memory.
Thus, operations on the StringBuilder class will be much
faster than operations on the String class in certain
situations. Paradoxically, just the the opposite can be
true in other situations.

The String class is optimized and quite efficient for most
cases. On the other hand, if strings must be modified, then
the String class can be a real resource waster. It must be
appreciated that the String class is really very
intelligent in its memory handling in most everyday
programming situations.

Instead of the String class, use the StringBuilder class
when a single string must be modified repeatedly.

Is This Answer Correct ?    5 Yes 0 No

Post New Answer

More C Sharp Interview Questions

wt is namespace? wt is the use?

12 Answers  


what is the difference between a struct and a class in c#?

0 Answers   4Cplus,


Explain the difference between a sub and a function?

1 Answers   Wipro,


Is as keyword in c#?

0 Answers  


What are the security issues if we send a query from the application?

1 Answers   Microsoft,






FOR EXAMPLE : CLASS Dotnet { } creating object: Dotnet dn=new Dotnet(); NOW THE QUESTION IS WHICH IS CALLED AS OBJECT ?EITHER dn OR new Dotnet() and CAN YOU PROVE YOUR ANSWER?????PLEASE REPLY...

1 Answers  


What is activator c#?

0 Answers  


How do I declare a pure virtual function in c#?

0 Answers  


from web.config file with connection string who to interact means who to connect in gridview. in my system shows null something error what is the problem

3 Answers   Bally Technologies,


What is polymorphism in c sharp?

0 Answers  


What is expression c#?

0 Answers  


What is pure abstract class in c#?

0 Answers  


Categories