如何将string []解析为其间有空格的字符串 你会如何重构这段代码?
internal string ConvertStringArrayToString(string[] array)
{
StringBuilder builder = new StringBuilder();
builder.Append(array[0]);
for (int i = 1; i < array.Length; i++)
{
builder.Append(' ');
builder.Append(array[i]);
}
return builder.ToString();
}
答案 0 :(得分:27)
已经有一种方法:
String.Join(" ", array)
这将在每个元素之间放置一个空格。请注意,如果您的任何元素都是空字符串,那么您最终会得到彼此相邻的空格,因此您可能需要提前过滤这些空格,如下所示:
String.Join(" ", array.Where(s => !String.IsNullOrEmpty(s)))
答案 1 :(得分:1)
internal string ConvertStringArrayToString(string[] array)
{
return string.Join(" ", array);
}
当然,拥有一个只调用另一个方法的方法很愚蠢,所以你可以全力以赴地删除你的方法...
答案 2 :(得分:0)
使用LINQ Aggregate()方法:
string result = array.Aggregate((acc, next) => acc + " " + next);