#c_sharp
Как из массива строк получить одну строку? Было: string[] many = { "ab", "bc", "cd", "de" }; Стало: string one = "abbccdde";
Ответы
Ответ 1
Метод String.Join сцепляет элементы указанного массива или элементы коллекции, помещая между ними заданный разделитель. string one = string.Join(null, many);Ответ 2
Для этого существует специальный метод String.Concat string[] many = { "ab", "bc", "cd", "de" }; string one = string.Concat(many); Некоторые перегрузки метода Concat используют внутри себя StringBuilder, например метод принимающий IEnumerablevalues. Другие перегрузки используют внутри себя небезопасный код, например метод принимающий params String[] values. Все это должно давать хорошую производительность при конкатенации строк. Ответ 3
Еще можно используя StringBuilder.Append, к примеру: string[] many = { "ab", "bc", "cd", "de" }; StringBuilder sb = new StringBuilder(); many.ForEach(x => sb.Append(x)); Console.WriteLine(string.Format("Result: " + sb)); // Result: abbccdde Доступные методы слияния строк: Сложение строк с использованием символа (+) StringBuilder string.Join string.Concat string.Format Ответ можно дополнить дополнительными способами, если таковые имеются.Ответ 4
Самый банальный наверно способ: string[] many = { "ab", "bc", "cd", "de" }; string one = ""; for (int i = 0; i < many.Length; i++) { one += many[i]; }
Комментариев нет:
Отправить комментарий