¿Cómo almacena Java los caracteres UTF-16 en su tipo de caracteres de 16 bits?

De acuerdo con laEspecificación de Java SE 7, Java usa el estándar Unicode UTF-16 para representar caracteres. Al imaginar unString como unmatriz simple De las variables de 16 bits que contienen un solo carácter, la vida es simple.

Desafortunadamente, hay puntos de código para los cuales 16 bits simplemente no son suficientes (creo que fue el 16/17 de todos los caracteres de Unicode). Así que en unString, esto no plantea ningún problema directo, porque al querer almacenar uno de estos ~ 1.048.576 caracteres usando undos bytes adicionales, simplemente dos posiciones de matriz en eseString Sería usado.

Esto, sin plantear ninguna.directo problema, trabaja paraStrings, porque siempre puede haber dos bytes adicionales. Aunque cuando se trata de variables individuales que, a diferencia de la codificación UTF-16, tienen unlongitud fija de 16 bits, ¿cómo se pueden almacenar estos caracteres y, en particular, cómo lo hace Java con suTipo "char" de 2 bytes?

Respuestas a la pregunta(2)

Su respuesta a la pregunta