如何将 IList<string> 或 IEnumerable<string> 列表转换为 C# 中以逗号分隔的字符串?
大家好!我是 C# 新手,遇到了这样一个任务:我有一个字符串列表(例如用户名),需要将它们用逗号连接成一行字符串,用于日志或报告。我使用 `IList` 或 `IEnumerable` 接口,但不知道如何优雅地实现。
目前我是这样做的:
```csharp
IList names = new List { "安娜", "鲍里斯", "维克多" };
string result = "";
for (int i = 0; i < names.Count; i++)
{
result += names[i];
if (i < names.Count - 1)
result += ", ";
}
Console.WriteLine(result);
```
这样能工作,但代码看起来冗长且不美观。特别是当列表为空时,我会得到空字符串,不过多余的逗号问题我已经解决了。请问有没有更优雅的方法?也许 .NET 中有内置方法?我听说过 `string.Join`,但不确定它是否适用于集合。另外,如果我用的是 `IEnumerable` 而不是列表,该怎么办?提前感谢帮助!