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

Posted

技术标签:

【中文标题】将 list<int> 转换为连接的整数字符串?【英文标题】:Convert a list<int> to a joined string of ints? 【发布时间】:2011-03-13 18:57:40 【问题描述】:

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

【问题讨论】:

【参考方案1】:
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&lt;string&gt;IEnumerable&lt;T&gt;。不需要创建Array,也不需要调用ToString(),隐式调用:

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

显式格式化字符串:

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

【讨论】:

【参考方案2】:

Stefan 的解决方案是正确的,并且非常适用于 .NET 3.5。在 .NET 4 中,有一个 overload of String.Join 需要一个 IEnumerable&lt;string&gt;,因此您可以使用:

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

甚至只是:

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

【讨论】:

需要 ToString() 吗?它似乎只是自己做,就像String.Join(",", list);

以上是关于将 list<int> 转换为连接的整数字符串?的主要内容,如果未能解决你的问题,请参考以下文章

将 List<int> 转换为 List<int?> 的最快方法

如何将 List<int> 转换为 string[]?

将 List<int?> 转换为 List<int> 的任何简单方法

无法将 initializer_list 转换为 class<int>

是否可以将 MVC C# List<int> 转换为 javascript 数组?

如何使用 dart 将 Uint8list 转换为 List<int>?