C#中的String和StringBuilder之间的区别

C#中的字符串

字符串在C#中是不可变的,这意味着创建后无法对其进行修改。如果执行任何操作,它将在内存中创建一个字符串类型的新对象。

string str1 = "Welcome!";
//创建一个新的字符串实例
str1 += "Hello";
str1 += "World”;

C#中的StringBuilder

StringBuilder在C#中是可变的。这意味着,如果对字符串执行操作,则不会每次都创建新实例。这样,它将不会像字符串那样在内存中创建新空间。

StringBuilder str1 = new StringBuilder("");
str1.Append("Welcome!");
str1.Append("Hello World!");
string str2 = str1.ToString();