使用 System.Text.StringBuilder 连接字符串
与使用+
进行简单的字符串连接相比,使用 StringBuilder 连接字符串可以提供性能优势。这是由于分配内存的方式。字符串与每个串联重新分配,StringBuilders 在块中分配内存,仅在当前块耗尽时重新分配。这可以在进行大量小型连接时产生巨大的差异。
StringBuilder sb = new StringBuilder();
for (int i = 1; i <= 5; i++)
{
sb.Append(i);
sb.Append(" ");
}
Console.WriteLine(sb.ToString()); // "1 2 3 4 5 "
对 Append()
的调用可以菊花链式连接,因为它返回对 StringBuilder
的引用:
StringBuilder sb = new StringBuilder();
sb.Append("some string ")
.Append("another string");