我想将一个字符串数组转换为单个字符串。

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";

我想要一些像“Hello World!”


当前回答

比使用已经提到的Join()方法稍微快一点的选项是Concat()方法。它不像Join()那样需要空分隔符参数。例子:

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";

string result = String.Concat(test);

因此,它可能更快。

其他回答

在接受的答案中,字符串。Join并不是最佳实践。字符串。应该使用Concat,因为OP在第一项中包含了一个尾随空格:“Hello”(而不是使用空分隔符)。

然而,由于OP请求的结果是"Hello World!", String。Join仍然是合适的方法,但是后面的空格应该移动到分隔符。

// string[] test = new string[2];

// test[0] = "Hello ";
// test[1] = "World!";

string[] test = { "Hello", "World" }; // Alternative array creation syntax 
string result = String.Join(" ", test);
string[] test = new string[2];

test[0] = "Hello ";
test[1] = "World!";

string.Join("", test);

是这样的:

string str= test[0]+test[1];

你也可以使用循环:

for(int i=0; i<2; i++)
    str += test[i];

聚合也可以用于相同的。

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";
string joinedString = test.Aggregate((prev, current) => prev + " " + current);
    string ConvertStringArrayToString(string[] array)
    {
        //
        // Concatenate all the elements into a StringBuilder.
        //
        StringBuilder strinbuilder = new StringBuilder();
        foreach (string value in array)
        {
            strinbuilder.Append(value);
            strinbuilder.Append(' ');
        }
        return strinbuilder.ToString();
    }