Difference between String and StringBuilder ?
String is immutable. Immutable means once we create string object we cannot modify. Any operation like insert, replace or append happened to change string simply it will discard the old value and it will create new instance in memory to hold the new value.
string str = "hi"; str += "hello"; // New string instance will be created, instead of changing the old one str += "hw r u"; // Again new string instance will be created, instead of changing the old one
String builder is mutable it means once we create string builder object we can perform any operation like insert, replace or append without creating new instance for every time.
StringBuilder sb = new StringBuilder(""); sb.Append("hi"); sb.Append("hello"); string str = sb.ToString();
|It’s an immutable||It’s mutable|
|Performance wise string is slow because every time it will create new instance||Performance wise StringBuilder is high because it will use same instance of object to perform any action|
|In string we don’t have append keyword||In StringBuilder we can use append keyword|
|String belongs to
||Stringbuilder belongs to
If you enjoyed this post, please like (or) share this article.