我需要良好的性能选项,以便将字符添加到string[] mystring;
mystring[0] = "I1.0"
mystring[1] = "I1.1"
之类的
string[] mystring;
mystring[0] = "%I1.0"
mystring[1] = "%I1.1"
进入
"%"
我需要在每个新字符串的开头添加StringBuilder
我必须编辑一个较大的Excel文件,并且需要良好的性能。我必须使用ToCharArray
还是{{1}}?
答案 0 :(得分:2)
StringBuilder
仅适用于5个以上的字符串操作,否则只是不必要的开销。只是在您的情况下使用+
,就不能对其进行太多优化。
请参阅StringBuilder性能基准测试和比较here。
如果您看到的性能不可接受,建议您搜索其他解决方案。重新考虑是否确实需要您要实现的目标,并且可能想出一些解决方法。
答案 1 :(得分:0)
回到过去,我看到许多关于某个代码段性能的问题。我们将得到的答案是“这是一个错误的问题。问题应该是'它是否足以满足我的客户的需求?如果不是,那么下一个问题应该是瓶颈。”
如果我这样做,我可能会将其输出为
string.format("%{0}", nputString)
使其运行,然后查看它是否足够快以适合我的使用。
在这种情况下,我会优先考虑可读性和可维护性而不是性能方面的考虑。
答案 2 :(得分:0)
非常感谢,最后,“ +”的运行速度足够快!
for (int i1 = 0; i1 < count; i1++)
{
if (adress[i1].Substring(0, 1) != "%") // TIA Portal: Operand hat "%" vorstehen, falls nicht wird hinzugefügt
{
adress[i1] = "%" + adress[i1];
}
}