Предполагая C #, вы пробовали String.Join ()? Или использование лямбды обязательно?
Пример:
string[] myStrings = ....;
string result = String.Join(",", myStrings);
EDIT
Хотя первоначальный заголовок (и пример) касался объединения строк с разделителем (на мой взгляд, String.Join()
делает лучшую работу), оригинальный плакат, кажется, спрашивает о более широком решении: как применить пользовательский формат список строк.
Мой ответ на этот вопрос - написать свой собственный метод. У String.Join есть цель, отраженная в его названии (объединяет несколько строк). Вероятность того, что логика вашего формата имеет значение в вашем проекте, высока, поэтому напишите его, дайте ему правильное имя и используйте его.
Например, если вы хотите вывести <li>text</li>
для каждого элемента, сделайте что-то вроде этого:
string FormatAsListItems(string[] myStrings)
{
StringBuilder sb = new StringBuilder();
foreach (string myString in myStrings)
{
sb.Append("<li>").Append(myString).Append("</li>");
}
}
Я думаю, что цель более ясна, и вы также не берете на себя снижение производительности при конкатенации строк в цикле.