VirQ. Соединение строк в C#
Язык C# входит в ТОП-5
самых популярных языков
программирования
Главная / Строковые переменные /
Соединение строк
Статей на сайте: 61

Соединение строк


Способов соединить две и более строк рядом друг с другом много. Мы их все сейчас рассмотрим.
Вариант 1 (и самый простой). Используем знак "+" между строками и получаем новый результат в result:
[code] string s1 = "Один"; string s2 = "Два"; string s3 = "Три"; string result = s1 + s2 + s3; //Получим ОдинДваТри [/code]
Обратите внимание, что соединяются слова без пробела, как это хотелось бы видеть.
Чтобы получить новую строку с пробелами, давайте в этом и последующих примерах укажем знак пробела " ":
[code] string s1 = "Один"; string s2 = "Два"; string s3 = "Три"; string result = s1 + " " + s2 + " " + s3; //Получим Один Два Три [/code]
Или так:
[code] string s1 = "Один "; //Укажите 1 пробел после слова внутри кавычек string s2 = "Два "; //Укажите 1 пробел после слова внутри кавычек string s3 = "Три"; //Здесь не обязательно, т.к. это последнее слово в списке string result = s1 + s2 + s3; //Получим Один Два Три [/code]
Вариант 2. Через string.Format. Внутри задаются последовательно пронумерованные элементы для замены {0}, {1}, {2} и т.д., а далее это же количество переменных:
[code] string s1 = "Один"; string s2 = "Два"; string s3 = "Три"; string result = string.Format("{0} {1} {2}", s1, s2, s3); //Получим Один Два Три [/code]
Как видим, пробел ставится между {0} и {1}, между {1} и {2}
Вариант 3. Через string.Join. Это метод соединения массива строк в 1 строку, используя разделитель. Код будет выглядеть немного по-другому:
[code] string result = string.Join(" ", new string[] { "Один", "Два", "Три" }); //Получим Один Два Три [/code]
Ну или так, выведя каждое слово в отдельную переменную:
[code] string s1 = "Один"; string s2 = "Два"; string s3 = "Три"; string result = string.Join(" ", new string[] { s1, s2, s3 }); //Получим Один Два Три [/code]
Вариант 4. Через string.Concate (правда, тут будет без пробелов):
[code] string s1 = "Один "; //Не забудьте пробел string s2 = "Два "; //Не забудьте пробел string s3 = "Три"; string result = string.Concate(s1, s2, s3); //Получим Один Два Три [/code]
Вариант 5. Через класс StringBuilder
[code] StringBuilder sb = new StringBuilder(); sb.Append("Один "); sb.Append("Два "); sb.Append("Три"); string s = sb.ToString(); //Получим Один Два Три [/code]
Класс StringBuilder можно перевести, как "Построитель Строки". С помощью команд Append добавляем 3 элемента. Результатом будет вывод через метод ToString(дословно: "В Строку"). Т.е. преобразовать коллекцию набранных слов в строку в той же последовательности

Дополнительная информация о том, как вывести результат в консоли или WinForm