Looking for .net Keywords? Try Ask4Keywords

.NET Framework Неизменяемость струн


пример

Строки неизменяемы. Вы просто не можете изменить существующую строку. Любая операция над строкой создает новый экземпляр строки, имеющей новое значение. Это означает, что если вам нужно заменить один символ в очень длинной строке, память будет выделена для нового значения.

string veryLongString = ...
// memory is allocated
string newString = veryLongString.Remove(0,1); // removes first character of the string.

Если вам нужно выполнить множество операций со строковым значением, используйте класс StringBuilder который предназначен для эффективной обработки строк:

var sb = new StringBuilder(someInitialString);
foreach(var str in manyManyStrings)
{
    sb.Append(str);
} 
var finalString = sb.ToString();