Home > DeveloperSection > Interviews > What do you mean by String objects are immutable?

Posted on    October-13-2014 11:41 PM

 ASP.Net ASP.Net  C# 
Ratings:
 1 Answer(s)
  796  View(s)
Rate this:

Kamlakar Singh
Kamlakar Singh

Total Post:80

Points:400
Posted on    October-13-2014 11:41 PM

String objects are immutable as its state cannot be modified once created. Every time when we perform any operation like add, copy, replace, and case conversion or when we pass a string object as a parameter to a method a new object will be created.

Example:
String str = "ABC";

str.Replace("A","X");

Here Replace() method will not change data that "str" contains, instead a new string object is created to hold data "XBC" and the reference to this object is returned by Replace() method.

So in order to point str to this object we need to write below line.
str = str.Replace("A","X");
Now the new object is assigned to the variable str. earlier object that was assigned to str will take care by garbage collector as this one is no longer in used.

Don't want to miss updates? Please click the below button!

Follow MindStick