字符串在C#中是不可变的,这意味着创建后无法对其进行修改。如果执行任何操作,它将在内存中创建一个字符串类型的新对象。
string str1 = "Welcome!"; //创建一个新的字符串实例 str1 += "Hello"; str1 += "World”;
StringBuilder在C#中是可变的。这意味着,如果对字符串执行操作,则不会每次都创建新实例。这样,它将不会像字符串那样在内存中创建新空间。
StringBuilder str1 = new StringBuilder(""); str1.Append("Welcome!"); str1.Append("Hello World!"); string str2 = str1.ToString();