В java doc утверждает это:размер полукокса в виде массива байтов
символ: Тип символ данных представляет собой одну 16-битный символ Юникода. Он имеет минимальное значение '\ u0000' (или 0) и максимальное значение '\ uffff' (или 65535 включительно).
Но когда у меня есть строки (только содержащий ASCII-знаки) и преобразовать его в массив байтов, каждый знак строки хранится в один байт, что меньше, чем 16 бит, как ява документы утверждает его , Как это работает? Я мог представить себе, что java-компилятор/интерпретатор использует только один байт на символ для знака ASCII для проблем с производительностью.
Кроме того, что произойдет, если у меня есть строка со знаками ASCII и одним знаком UTF-16 и преобразует их в массив байтов. Каждый знак String теперь использует 2 байта?
Как вы его «конвертировали»? – keshlam
Что такое знак ASCII? –
http://stackoverflow.com/questions/2164804/from-compilation-to-runtime-how-does-java-string-encoding-really-work –