Explode и Implode (как PHP) в Java

Я новичок в Java, хотя имел хороший опыт работы в PHP и ищу идеальную замену для функций Explode и implode (доступных в PHP) на Java.

У меня есть Googled для того же, но не устраивает результаты. У любого есть хорошее решение для моей проблемы, будет оценено.

Ответ 1

Javadoc для String показывает, что String.split() это то, что вы ищете в отношении explode.

Java не включает "implode" эквивалента "join". Вместо того, чтобы включать гигантскую внешнюю зависимость для простой функции, как предлагают другие ответы, вы можете просто написать пару строк кода. Существует несколько способов сделать это; с помощью StringBuilder является одним:

String foo = "This,that,other";
String[] split = foo.split(",");
StringBuilder sb = new StringBuilder();
for (int i = 0; i < split.length; i++) {
    sb.append(split[i]);
    if (i != split.length - 1) {
        sb.append(" ");
    }
}
String joined = sb.toString();

Ответ 2

String.split() может предоставить вам замену для explode()

Для замены implode() я бы посоветовал вам написать либо пользовательскую функцию, либо использовать функции Apache Commons StringUtils.join().

Ответ 3

Хорошими альтернативами являются методы String.split и StringUtils.join.

Взрыв:

String[] exploded="Hello World".split(" ");

Implode:

String imploded=StringUtils.join(new String[] {"Hello", "World"}, " ");

Имейте в виду, что StringUtils находится во внешней библиотеке.

Ответ 5

Я не знаком с PHP, но я думаю, String.split является Java, эквивалентным PHP explode. Что касается implode, стандартная библиотека не предоставляет такую ​​функциональность. Вы просто перебираете массив и строите строку, используя StringBuilder/StringBuffer. Или вы можете попробовать отличные Google Guava Splitter и Joiner или split/join из Apache Commons StringUtils.

Ответ 6

если вы говорите в ссылке на String Class. поэтому вы можете использовать

подстроку/разделить

для Explode и использования String

concate

для Implode.