Desde hace años es sabido que concatenar strings con el operador + no es nada recomendable por su bajo rendimiento respecto a otras opciones. Pero la facilidad de su uso ha conseguido que a estas alturas sea la primera opción que usan muchos programadores para juntar varios strings en uno.
Si lo que estás haciendo es un programa tipo "hola mundo" no vas a notar mucha diferencia entre usar el + o no, pero cuando ya te metes en algo más serio puedes estar creando una ralentización de tu código sin saberlo y que tiene muy facil solución: NO USES EL +
La opción con mejor rendimiento es usar StringBuilder y juntar Strings mediante el método append. Pongamos un ejemplo:
String juntaletras = new StringBuilder().append("A").append("BE").append("C").toString();
Como ves tampoco te va a llevar mucho más tiempo hacerlo de esta forma y a la larga vas a salir ganando. La única pega del StringBuilder es que no es synchronized y te puedes llevar un chasco si estás usando programación recurrente multihilos. Para asegurar que tus datos no se corrompen en esos casos puedes usar sin ningún problema StringBuffer. Su uso es similiar a StringBuilder:
String juntaletras = new StringBuffer().append("A").append("BE").append("C").toString();
Cualquiera de las dos opciones mejora el rendimiento del operador + así que ante la duda puedes usar siempre StringBuffer ;)
No hay comentarios:
Publicar un comentario