Я ищу быстрый и простой способ сделать в точности противоположное split, чтобы это привело к ["a","b","c"] превращению "a,b,c"
Для выполнения итерации по массиву требуется либо добавить условие (если это не последний элемент, добавьте разделитель), либо использовать substring для удаления последнего разделителя.
Я уверен, что есть сертифицированный и эффективный способ сделать это (Apache Commons?)
Как вы предпочитаете делать это в своих проектах?
Переведено автоматически
Ответ 1
Используя Java 8, вы можете сделать это очень простым способом:
Для решения этой конкретной проблемы я предпочитаю Guava, а не Apache StringUtils:
Joiner.on(separator).join(array)
По сравнению со StringUtils, Joiner API имеет свободный дизайн и немного более гибкий, например, null элементы могут быть пропущены или заменены заполнителем. Также, Joiner имеет функцию для объединения карт с разделителем между ключом и значением.
Однако я подозреваю, что, как вы упомянули, в реальной реализации вышеупомянутого метода должна быть какая-то обработка условий или подстрок.
Если бы я должен был выполнить String объединение и у меня не было других причин использовать Commons Lang, я бы, вероятно, внедрил свой собственный, чтобы уменьшить количество зависимостей от внешних библиотек.