gpt4 book ai didi

c# - 字符串类 Replace 和 Stringbuilder 替换

转载 作者:行者123 更新时间:2023-11-30 14:17:29 25 4
gpt4 key购买 nike

string s = "value_test_this";
string m = s.Replace('e','E');

StringBuilder strBuilder = new StringBuilder("value_test_this");
strBuilder.Replace('e','E');

由于字符串是不可变的,Replace 如何在字符串类中工作,

最佳答案

它在内存中创建另一个字符串,然后将 m 指向该新字符串。旧字符串也保留在内存中。

这正是如果必须对字符串进行频繁修改时应使用 StringBuilder 的原因。

如果您想知道为什么字符串在 C# 中是不可变的,请查看 this SO discussion

关于c# - 字符串类 Replace 和 Stringbuilder 替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5801082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com