Avatar ·

如何将 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` 而不是列表,该怎么办?提前感谢帮助!