如何将数组转换为字符串

3
我希望将数组转换为字符串,代码如下:
string[] parts={"1","2","3","4"};

并输出为
string str="%1%2%3%4%";

2
string.Join("%", parts) 的基础上,加入开头和结尾的 % - DavidG
我想你也可能已经谷歌过这个了。 - MakePeaceGreatAgain
1
Linq:parts.Aggregate(“%”,(current,next)=> current + next +“%”) - Klaudiusz bryjamus
@Klaudiuszbryjamus,虽然这很聪明,但它存在"在循环中连接字符串"的问题。 (https://msdn.microsoft.com/en-us/library/ms182272(v=vs.80).aspx) - juharr
@juharr,但这只是一个简单的Linq查询,而不是循环,所以您可以使用Linq。 - Klaudiusz bryjamus
显示剩余2条评论
4个回答

3

使用string.Join函数:

var str = string.Join("%", parts);

并在周围加上%标记:

str = string.format("%{0}%", str);

2

1
可能值得一提的是,这只适用于C#6。 - DavidG

1
string.Join将使用分隔符连接数组中的string。然后,您只需要在开头和结尾添加“%”。
string str = "%" + string.Join("%", parts) + "%";

谢谢,它正常工作。 - Sarfaraz Ali

0
    StringBuilder builder = new StringBuilder();    
    foreach(string tmp in parts)
    {
       builder.append("%");
       builder.append(tmp);
    }
    builder.append("%");
    string result = builder.ToString();

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