## Crear String y StringBuffer

    class ReverseString {
        public static String reverseIt(String source) {
            int i, len = source.length();
            StringBuffer dest = new StringBuffer(len);

            for (i = (len - 1); i >= 0; i--) {
                dest.append(source.charAt(i));
            }
            return dest.toString();
        }
    }

El método reverseIt() crea un StringBuffer llamado dest cuya longitud inicial es la misma que la de source. StringBuffer dest declara al compilador que dest se va a utilizar para referirse a un objeto del tipo StringBuffer, el operador new asigna memoria para un nuevo objeto y StringBuffer(len) inicializa el objeto. Estos tres pasos--declaración, ejemplarización e inicialziación-- se describen en: Crear Objetos.

### Crear un String

> Muchos Strings se crean a partir de cadenas literales. Cuando el compilador encuentra una serie de caracteres entre comillas (" y "), crea un objeto String cuyo valor es el propio texto. Cuando el compilador encuentra la siguente cadena, crea un objeto String cuyo valor es Hola Mundo.

>     "Hola Mundo."

> También se pueden crear objetos String como se haría con cualquier otro objeto Java: utilizando new.

>     new String("Hola Mundo.");

### Crear un StringBuffer

> El método constructor utilizado por reverseIt() para incializar dest requiere un entero como argumento que indique el tamaño inicial del nuevo StringBuffer.

>     StringBuffer(int length)

> reverseIt() podría haber utilizado el constructor por defecto para dejar indeterminada la longitud del buffer hasta un momento posterior. Sin embargo, es más eficiente especificar la longitud del buffer si se conoce, en vez de asignar memoria cada vez que se añadan caracteres al buffer.

Ozito