Cita:
Iniciado por red_robe System.out.println(cadena);
y no me escribe la cadena vacía, sino que pone basura!!
El error es "tuyo" de interpretacion. Si cadena es un char[], System.out.println(cadena) no imprime el contenido de la cadena, imprime la referencia al array, eso que que tu llamas basura.
La solución para imprimir el contenido te la da Ethiel
.