Codificación de caracteres UTF-16 de Java

Estaba tratando de entender la codificación de caracteres en Java. Los caracteres en Java se almacenan en 16 bits utilizando la codificación UTF-16. Entonces, mientras estoy convirtiendo una cadena que contiene 6 caracteres a byte, obtengo 6 bytes como se muestra a continuación, espero que sea 12. ¿Hay algún concepto que me esté perdiendo?

package learn.java;

public class CharacterTest {

    public static void main(String[] args) {
        String str = "Hadoop";
        byte bt[] = str.getBytes();
        System.out.println("the length of character array is " + bt.length);
    } 
}

O / p: la longitud de la matriz de caracteres es 6

Según @Darshan, cuando se intenta con la codificación UTF-16 para obtener bytes, el resultado tampoco se espera.

package learn.java;

    public class CharacterTest {

        public static void main(String[] args) {

            String str = "Hadoop";
            try{
                byte bt[] = str.getBytes("UTF-16");
                System.out.println("the length of character array is " + bt.length);

            }
            catch(Exception e)
            {

            }
        } 
    }

o/p: the length of character array is 14

Respuestas a la pregunta(5)

Su respuesta a la pregunta