C#中的不可变字符串示例
下面代码定义了两个字符串实例,然后我们将第一个字符串的值更改为第二个字符串的值。 您可能会认为,您仍在使用相同的旧名称变量,但实际上第三行中的名称是一个新对象。
string name = "Onitroad.com"; string lastName = "Something else"; name = lastName; Console.WriteLine(name);
.NET 中的字符串是不可变的。 字符串一旦创建,就无法修改。 在您看来,您正在为同一个字符串对象重新分配一个新值,但事实并非如此。 每次为现有字符串对象分配新值时,C#语言都会创建一个新对象并释放旧对象。 这意味着在 C# 和 .NET 中处理字符串操作时必须小心。 如果您要进行大量字符串操作,建议使用 StringBuilder 类。
日期:2020-04-11 23:03:40 来源:oir作者:oir