Soy nuevo en Java, aunque tuve una buena experiencia en PHP y busco un reemplazo perfecto para las funciones de explosión e implosión (disponible en PHP) en Java.
He buscado en Google lo mismo, pero no estoy satisfecho con los resultados. Cualquiera que tenga la buena solución para mi problema será apreciado.
Por ejemplo:
String s = "x,y,z";
//Here I need a function to divide the string into an array based on a character.
array a = javaExplode(',', s); //What is javaExplode?
System.out.println(Arrays.toString(a));
Salida deseada:
[x, y, z]
Respuestas:
El Javadoc para String revela que eso
String.split()
es lo que estás buscandoexplode
.Java no incluye un equivalente de "implosión" de "unión". En lugar de incluir una dependencia externa gigante para una función simple como sugieren las otras respuestas, es posible que solo desee escribir un par de líneas de código. Hay varias formas de lograrlo; usando a
StringBuilder
es uno:fuente
String#join
( documentación ). Para su ejemplo:String joined = String.join(" ", split);
. El método usa laStringJoiner
clase.String.split()
puede proporcionarle un reemplazo paraexplode()
Para una sustitución de
implode()
Me había recomendamos que escribir sea una función personalizada o utilizar Apache Commons 'sStringUtils.join()
funciones.fuente
Buenas alternativas son los métodos String.split y StringUtils.join.
Explotar:
Implicar:
Sin embargo, tenga en cuenta que StringUtils está en una biblioteca externa.
fuente
packages such as sun., that are outside of the Java platform, can be different across OS platforms (Solaris, Windows, Linux, Macintosh, etc.) and can change at any time without notice with SDK versions
java.lang.String.split(String regex)
es lo que buscas.fuente
No estoy familiarizado con PHP, pero creo que String.split es Java equivalente a PHP
explode
. En cuanto aimplode
, la biblioteca estándar no proporciona dicha funcionalidad. Simplemente itera sobre tu matriz y construye una cadena usando StringBuilder / StringBuffer . O puede probar el excelente Google Guava Splitter and Joiner o lossplit/join
métodos de Apache Commons StringUtils .fuente
si está hablando en la referencia de String Class. para que puedas usar
para explotar y usar cadena
para Implode.
fuente
concate
no es equivalente aimplode
.