Ayuda Concatenar String con Espacios
Ayuda, soy nuevo en Java estoy intentando concatenar las palabras que están dentro de un arreglo tipo String[], en una cadena de tipo String pero al concatenarlos me agrega todo junto ejemplo
cadena[0]=ABC;
cadena[1] = DEF;
Salida = ABCDEF y yo quiero que me salga algo como Salida = ABC DEF
Mi Codigo
String textfinal = "";
for( int x = 0; x < conca.length; x++)
{
textfinal = conca[x]+" ";
}
Intente de varias formas que se me ocurrieron pero no me sale, se que va ser algo tonto pero bueno.
Gracias
- Inicie sesión o regístrese para enviar comentarios
Y si dentro de tu ciclo le
Y si dentro de tu ciclo le agregas:
textfinal = conca[x];
textfinal +=" "; // o bien textfinal = textfinal + " ";
}
Gracias neko069 ya lo
Gracias neko069 ya lo intente, y no me funciono me sigue igual.
Seguro?
Estas seguro que lo has hecho bien? el código que coloco @neko069 debería funcionar sin problemas.
Solo a modo de ejemplo volvere a hacer lo que te dijo neko, Revisalo bien.
arreglo[0]="Hola";
arreglo[1] = "Mundo";
arreglo[2] = "JAJA";
String text = "";
for(int i = 0; i<arreglo.length; i++) {
text = text + arreglo[i] + " ";
}
System.out.println(text);
Resultado:
Hola Mundo JAJA
Pues ya cambie mi método,
Pues ya cambie mi método, estaba usando código inservible ya lo solucione con el uso de la Clase StringBuilder y el .append();
Gracias Jose Manuel y neko069.
Re: Concatenar arreglo de Strings
Si utilizas Java 5+, puedes hacer algo similar a:
String[] array = {"ABC", "CDE"};
System.out.println(concat(array));
}
public static String concat(String... strs) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < strs.length; i++) {
sb.append(strs[i]);
if (i < strs.length - 1) {
sb.append(' ');
}
}
return sb.toString();
}
Pero si utilizas Java 8, tienes varias opciones. Esta es una de ellas:
String[] array = {"ABC", "CDE"};
System.out.println(concat(array));
}
public static String concat(String... strs) {
StringJoiner joiner = new StringJoiner(" ");
for (String str : strs) {
joiner.add(str);
}
return joiner.toString();
}
En ambos casos, la salida es:
* El resultado no incluye un espacio adicional al final de la cadena.