Muchos conocemos la función de Split en Java. Split separa una cadena de texto de acuerdo a un delimitador y pone el resultado de esa separación en un arreglo de elementos.
Es decir, si tenemos una cadena como la siguiente:
String cadena = "uno,dos,tres,cuatro,cinco";
Y utilizamos la función split de la siguiente forma:
String cadena = "uno, dos, tres, cuatro, cinco";
String arreglo[] = cadena.split(",");
La variable arreglo[] contendrá los elementos resultado de la división de la cadena mediante el delimitador ",". Esto significa que el arreglo contendrá lo siguiente:
arreglo[0] = "uno" arreglo[1] = "dos" arreglo[2] = "tres" arreglo[3] = "cuatro" arreglo[4] = "cinco"
Pero en ocasiones tal vez necesitemos llevar a cabo la acción inversa de split; esto es: dado un arreglo de elementos, obtener un cadena con esos elementos, divididos por un delimitador. Teniendo el arreglo anterior, el split inverso nos devolvería una cadena como la siguiente:
cadena = "uno,dos,tres,cuatro,cinco";
Para hacer esta acción inversa tenemos que usar la librería java.util.Arrays; aquí un ejemplo:
import java.util.Arrays;
public class clsReverseSplit {
public clsReverseSplit() {
}
public String reverseSplit(String gArreglo[], String delimiter){
return Arrays.toString(gArreglo).replace(", ", delimiter).replaceAll("[\\[\\]]", "");
}
public static void main(String args[]){
clsReverseSplit objeto = new clsReverseSplit();
String arreglo[] = {"Uno", "Dos", "Tres", "Cuatro", "Cinco"};
/* Imprimimos los elementos del arreglo */
System.out.println("Elementos: ");
for(String elemento:arreglo)
System.out.println(elemento);
/* Obtenemos los valores del arreglo separados por coma */
System.out.println("Split inverso (separado por comas): ");
System.out.println(objeto.reverseSplit(arreglo, ","));
/* Obtenemos los valores del arreglo separados por punto y coma */
System.out.println("Split inverso (separado por punto y coma): ");
System.out.println(objeto.reverseSplit(arreglo, ";"));
/* Obtenemos los valores del arreglo separados por tabulador */
System.out.println("Split inverso (separado por tabulador): ");
System.out.println(objeto.reverseSplit(arreglo, "\t"));
String ac = "uno,dos";
String arre[] = ac.split(",");
for(String elemento:arre)
System.out.println(elemento);
}
}