Chr*_*ann 4 .net c# string stringbuilder
将字符串添加到另一个字符串的性能更高效?
使用StringBuilder.Insert方法还是string.Concat方法?
messageString.Insert(0, prependedString);
Run Code Online (Sandbox Code Playgroud)
要么
string.Concat(prependedString, messageString);
Run Code Online (Sandbox Code Playgroud)
在我的情况下,消息字符串相对较大,前置字符串很短.
string.Concat如果项目数量是固定的,这是最快的方法.在所有情况下都适用这种说法.字符串有多长并不重要.
string.Concat计算最终的字符串大小,然后将这些位复制到一个新分配的字符串中.它不能更快地完成.
实际上,您应该编写a + b而不是调用Concat(如果在特定情况下可能的话).
对于大字符串使用字符串构建器
假.那为什么会这样?!
如果您正在使用StringBuilder连接两个以上的字符串
假.如果数字是固定的,请使用Concat.StringBuilder只会增加你的开销.
答案取决于你连接的字符串数量,以及它们的大小
假.我上面描述的算法始终是最快的解决方案.
StringBuilder的神话是一个惊人的变化.如果您了解这两个选项如何在内部工作,您可以自己回答所有这些问题.我没有研究和记住所有这些答案.我根据对内部的理解来生成它们.
| 归档时间: |
|
| 查看次数: |
1386 次 |
| 最近记录: |