Страницы

Поиск по вопросам

среда, 5 февраля 2020 г.

Java ASCII и (char)

#java #ascii


Вводил разные значения в 

 System.out.println((char)855);


и сверял полученный результат с таблицей ASCII. Результаты сходились только до 127.
Почему дальше результаты не сходились? (ведь таблицу расширили до 256) И почему можно
вообще использовать такие значения как 855?
    


Ответы

Ответ 1



Дело в том, что в Java строки представляются в стандарте Unicode. Поэтому множество представимых символов не ограничено таблицей ASCII. Можете здесь посмотреть таблицу Unicode. Тип char в Java 2-х байтовый, т.е. в нём представимы числа от 0 до 65535, с помощью которых представляются символы в кодировке UTF-16. Символом с кодом 855 является Комбинируемый надстрочный правый полукруг. Собственно, он и выводится у вас в программе.

Комментариев нет:

Отправить комментарий