Я искал внутреннее представление Java для String, но у меня есть два материала, которые выглядят надежными, но непоследовательными.
Один из них:
http://www.codeguru.com/cpp/misc/misc/multi-lingualsupport/article.php/c10451
и он говорит:
Java использует UTF-16 для внутреннего текстового представления и поддерживает нестандартную модификацию UTF-8 для сериализации строк.
Другой:
и он говорит:
Tcl также использует тот же модифицированный UTF-8 [25], что и Java для внутреннего представления данных Unicode, но использует внешние CESU-8 для внешних данных.
Модифицированный UTF-8? Или UTF-16? Какой из них правильный? И сколько байтов использует Java для char в памяти?
Пожалуйста, дайте мне знать, какой из них правильный, и сколько байтов оно использует.