连接列表<List<string>> 需要很长时间

Concatenating List<List<string>> takes a long time

到目前为止我尝试了什么

string Value ="";
foreach (List<string> val in L1)
{
   Value = Value + string.Join(",", val) + " // ";
}

其中 L1 的数据类型为 List <List<strings>>

这可行,但需要将近 n 个半小时才能完成 是否有尽可能多的最快和最简单的方法来实现这一目标。

我建议在这样的循环中使用 StringBuilder 而不是连接:

StringBuilder builder = new StringBuilder();
foreach (List<string> val in L1)
{
    builder.Append(string.Join(",", val) + " // ");
}
string result = builder.ToString();

在循环中连接时,每次都需要将字符串复制到内存中的新位置,并分配额外的内存。 StringBuilder 阻止了这种情况。

您还可以参考:

  • How to use StringBuilder wisely
  • How does StringBuilder work?
  • How the StringBuilder class is implemented? Does it internally create new string objects each time we append?