将数组转换为简单字符串的C#方法/语法是什么?

4
我需要的是类似于JavaScript中Array::join()的基本等效物,您可以传入分隔符,并将其用于返回所有下标的字符串。我当然可以使用StringBuilder或其他方法编写自己的函数,但.NET BCL中必须有一些内置的东西。
编辑:任何类型的数组,不一定是stringchar。我希望该方法仅调用每个下标objectToString()String.Join()非常好,只是您需要传递一个字符串数组。
3个回答

3

如果数组包含字符串,你可以直接使用 String.Join()。如果数组不包含字符串,则需要更复杂的处理方式,以便处理它所包含的每个项的类型转换或转换过程。

更新: 使用@JaredPar的代码作为更通用示例的基础:

char sep = GetSeparatorChar();
object[] toJoin = GetToJoin();
string joined = toJoin.Aggregate((x,y) => x.ToString()+sep.ToString()+y.ToString());

显然,在这个例子中,你可以任意修改x和y以便让字符串看起来符合你的要求。


1
如果 String.Join 不符合您的要求 - 例如,您有一个 `IEnumerable` 而不是一个 `string[]`,或者您有某种其他类型的集合,请参见 这个早期问题

0

我不确定您是要连接字符数组还是字符串。

如果是字符串:


char sep = GetSeparatorChar();
string[] toJoin = GetToJoin();
string joined = toJoin.Aggregate((x,y) => x+sep.ToString()+y);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接