与StringBuilder连接

是否有合理的资源使用StringBuilder来连接两个字符串,或者是否存在使StringBuilder高效的最小连接操作?

…如果串联固定数量的String对象,则String类更适合并置操作

String.Join是最快的,因为它在一次操作中分配所有必需的内存。 请参阅此文章: StringBuilder与.NET 2.0的字符串/快速字符串操作

使用StringBuilder连接两个字符串不会给你任何好处,因为结果仍然必须转换为字符串 – 所以直接连接它们是一个分配+两个副本。 StringBuilder无法做得更好 – 只会使代码混乱。

如果你问这个问题,你可能会决定使用什么技术来获得良好的性能。

如果你想要获得良好的性能,那么你可能有一套精心设计的性能测试,清楚地显示了两种不同技术之间的差异,这些技术是根据一组真实的,以用户为中心的性能场景来衡量的。

如果你有这样的套房,为什么要问我们? 只需两种方式运行它,看看哪一个给你更好的性能!

如果您没有这样的套件, 那么通过在互联网上随机询问不了解您的客户,您的代码或您的方案的随机人员您将无法通过缓慢的应用程序获得良好的性能。 为自己构建一套精心设计的性能测试套件,使您可以测量两种技术之间的差异,并将其与一组实际的以用户为中心的性能目标进行比较。