C#List<string>到带分隔符的字符串

C#中是否有一个函数可以快速将一些集合转换为字符串并使用分隔符分隔值?

例如:

List<string> names-->string names_together = "John, Anna, Monica"

848737 次浏览

您可以使用String.Join。如果您有List<string>,那么您可以先调用ToArray

List<string> names = new List<string>() { "John", "Anna", "Monica" };var result = String.Join(", ", names.ToArray());

在. NET 4中,您不再需要ToArray,因为String.Join的重载需要IEnumerable<string>

结果:


约翰,安娜,莫妮卡

如果你愿意,你也可以用linq做这个

var names = new List<string>() { "John", "Anna", "Monica" };var joinedNames = names.Aggregate((a, b) => a + ", " + b);

虽然我更喜欢Quartermeister答案中的非linq语法,而且我认为Aggregate可能执行得更慢(可能更多的字符串连接操作)。