Закрыт как точный дубликат этот вопрос.
У меня есть массив / список элементов. Я хочу преобразовать его в строку, разделенную настраиваемым разделителем. Например:
[1,2,3,4,5] => "1,2,3,4,5"
Какой самый короткий / самый простой способ сделать это в C#?
Я всегда делал это, циклически повторяя список и проверяя, не является ли текущий элемент последним перед добавлением разделителя.
for(int i=0; i<arr.Length; ++i)
{
str += arr[i].ToString();
if (i<arr.Length)
str += ",";
}
Есть ли функция LINQ, которая поможет мне писать меньше кода?





String.Join(",", arr.Select(p=>p.ToString()).ToArray())
@neminem string.Join(string, IEnumerable<string>) не существовал в 2008 году.
String.Join(",", array.Select(o => o.ToString()).ToArray());
На самом деле вам не нужна строка ToArray () ....Join может принимать IEnumerable, а IEnumerable.Select возвращает IEnumerable.