【发布时间】:2014-11-05 01:02:49
【问题描述】:
我有一个字符串,我必须编辑很多。长度未定义。 Replace(string, string) 将是最常用的方法。
string.Replace("", "") 或 StringBuilder.Replace("", "") 哪个更好?
public static string FormatMyString(string input)
{
// ...
}
(代码示例简单而愚蠢。它们只是为了向您展示我在做什么。我总是收到问题:“您要做什么?”) p>
【问题讨论】:
-
谁知道什么是最好的?您需要定义“更好”的标准,然后您必须用您的数据对您的代码进行基准测试。只有这样你才会知道。
-
用于编辑大字符串:en.wikipedia.org/wiki/Rope_(data_structure)。也许你能找到足够的实现。
-
String.replace("","") 替换后创建新字符串。根据您的标准,字符串长度未定义,因此请考虑内存字符串生成器比字符串更好。因为字符串生成器会更改现有字符串并且不会创建新字符串。两者都不是线程安全的。所以我们无法比较字符串和字符串生成器之间的执行速度
-
@Robban 抱歉,它没有出现在推荐的问题中。是的,我认为这很有帮助。
标签: c# string performance stringbuilder