C#中是否有一个函数可以快速将某些集合转换为字符串并使用分隔符分隔值?
例如:
List<string> names - > string names_together = "John, Anna, Monica"
将字符串列表连接到组合分隔字符串的最佳方法是什么.我主要关注何时停止添加分隔符.我将使用C#作为我的示例,但我希望这与语言无关.
编辑:我没有使用StringBuilder使代码稍微简单.
使用For循环
for(int i=0; i < list.Length; i++)
{
result += list[i];
if(i != list.Length - 1)
result += delimiter;
}
Run Code Online (Sandbox Code Playgroud)
使用For循环设置之前的第一个项目
result = list[0];
for(int i = 1; i < list.Length; i++)
result += delimiter + list[i];
Run Code Online (Sandbox Code Playgroud)
这些对于IEnumerable不起作用,因为你事先不知道列表的长度
使用foreach循环
bool first = true;
foreach(string item in list)
{
if(!first)
result += delimiter;
result += item;
first = false;
}
Run Code Online (Sandbox Code Playgroud)
foreach循环的变化
来自Jon的解决方案
StringBuilder builder = new StringBuilder();
string delimiter = "";
foreach (string item in list)
{
builder.Append(delimiter);
builder.Append(item); …Run Code Online (Sandbox Code Playgroud)