Ха! Благодаря этому сообщению Я нашел другой способ сделать это:
public static class Extensions
{
public static string JoinWith(this IEnumerable<string> strings, string separator)
{
return String.Join(separator, strings.ToArray());
}
}
Конечно, сейчас это в C #, и Java (пока) не будет поддерживать метод расширения, но вы должны иметь возможность адаптировать его по мере необходимости & mdash; в любом случае главное - использовать String.Join
, и я уверен, что у java есть какой-то аналог.
Также обратите внимание, что это означает выполнение дополнительной итерации строк, потому что вы должны сначала создать массив, а затем выполнить итерацию по нему для построения вашей строки. Кроме того, вы создадите массив, где с помощью некоторых других методов вы сможете обойтись с IEnumerable, который одновременно хранит только одну строку в памяти. Но мне очень нравится дополнительная ясность.
Конечно, учитывая возможность метода Extension, вы можете просто абстрагировать любой другой код в метод расширения.