A los principiantes en java le dicen que si se van a usar números se usen el tipo Integer. Después le dicen más tipos de datos como los long, short, byte... algunos son como el integer pero con más capacidad, aun ocupando más memoria. Otros tienen menos capacidad, pero también usan menos memoria.
La pregunta es: También pasa lo mismo con el String? Existe el tipo char, que ocupa menos que el string pero solo admite 1 carácter. Pero... hay algún otro que admita más caracteres y que ocupe menos memoria que un String, aunque tenga un límite menor de caracteres? (Cuanto ocupa un String?)