将列表<int>转换为连接的整数字符串?</int>

时间:2010-07-09 09:36:40

标签: c# arrays linq

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

2 个答案:

答案 0 :(得分:22)

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

编辑,C#4.0

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

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

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

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

答案 1 :(得分:12)

Stefan的解决方案是正确的,而.NET 3.5几乎是必需的。在.NET 4中,有一个overload of String.Join需要IEnumerable<string>,因此您可以使用:

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

甚至只是:

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