将列表转换为连接的整数字符串?

我有一个值为3,99,6的int数组。 如何使用linq将数组转换为字符串3,99,6

 int[] list = new [] {3, 99, 6}; string s = string.Join(",", list.Select(x => x.ToString()).ToArray()); 

编辑,C#4.0

使用C#4.0,还有另一个string.Join重载,它最终允许直接传递IEnumerableIEnumerable 。 无需创建数组,也无需调用ToString() ,它是隐式调用的:

 string s = string.Join(",", list); 

使用显式格式化为字符串:

 string s = string.Join(",", list.Select(x => x.ToString(/*...*/)); 

Stefan的解决方案是正确的,而.NET 3.5几乎是必需的。 在.NET 4中,有一个String.Join的重载,它接受一个IEnumerable所以你可以使用:

 string s = string.Join(",", list.Select(x => x.ToString()); 

甚至只是:

 string s = string.Join(",", list);