Подтвердить что ты не робот

Преобразовать строковый массив в строку

Я хотел бы преобразовать строковый массив в одну строку.

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

Я хотел бы иметь что-то вроде "Hello World!"

4b9b3361

Ответ 1

string[] test = new string[2];

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

string.Join("", test);

Ответ 2

Параметр Join() с меньшей быстрее, чем использование уже упомянутого метода Concat() метод. Он не требует пустого параметра разделителя, как это делает Join(). Пример:

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

string result = String.Concat(test);

следовательно, это скорее всего быстрее.

Ответ 3

Try:

String.Join("", test);

который должен возвращать строку, соединяющую два элемента вместе. "" указывает, что вы хотите, чтобы строки были объединены без каких-либо разделителей.

Ответ 4

Простая строка. Concat() - это то, что вам нужно.

string[] test = new string[2];

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

string result = string.Concat(test);

Если вам также нужно добавить разделитель (пробел, запятую и т.д.), тогда следует использовать string.Join().

string[] test = new string[2];

test[0] = "Red";
test[1] = "Blue";

string result = string.Join(",", test);

Если вам нужно выполнить это в массиве строк с элементами, содержащими элементы, отличные от string.Join() лучше с точки зрения производительности. Просто дайте аргумент "" (пустой) в качестве разделителя. StringBuilder также может использоваться для повышения производительности, но он сделает код немного дольше.

Ответ 5

Aggregate также можно использовать для этого.

string[] test = new string[2];
test[0] = "Hello ";
test[1] = "World!";
string joinedString = test.Aggregate((prev, current) => prev + " " + current);

Ответ 6

    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();
    }

Ответ 7

Я использовал этот способ для ускорения моего проекта:

RichTextBox rcbCatalyst = new RichTextBox()
{
    Lines = arrayString
};
string text = rcbCatalyst.Text;
rcbCatalyst.Dispose();

return text;

RichTextBox.Text автоматически преобразует ваш массив в многострочную строку!

Ответ 8

В принятом ответе String.Join не подходит для использования. String.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);

Ответ 9

Вот так:

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

Вы также можете использовать цикл:

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