Как я прочитал в книге К. Хорстмана, что некоторые символы из UNICODE представляются с дополнением. Так вот меня интересует логическое представление этого. То есть, там имеется ввиду, что каждый символ в строке, к примеру "abc", может быть с дополнением, то при вызове charAt(i)
я получу символ, если это символ с дополнением, или получу само дополнение? Если я получу само дополнение, то как мне получить посимвольно всю строку?
Некоторые символы юникода действительно представляются в виде 2 последовательных char,т.к. char вмещает 2 байта и представляет по сути символ из UTF-16 здесь описано как символы юникода кодируются в UTF-16,см. суррогатные пары
то при вызове charAt(i) я получу символ, если это символ с дополнением, или получу само дополнение?
Зависит от того при каком i вызовешь. Если подобных символов несколько,велика вероятность что получишь совсем не то что ожидал,так как сколько-то символов до этого уже было представлено в виде 2 char.
Но допустим это самый левый символ в строке, тогда при вызове charAt(0)
и charAt(1)
, ты получишь первый и второй char суррогатной пары
Сам символ(его Unicode код) можно получить вызвав codePointAt(0)
,при этом codePointAt(0)
вернет то же самое, что и charAt(1)
как мне получить посимвольно всю строку?
"string".codePoints()
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Никак не могу добиться JSON ответа от сервера OnlyOffice, приходит plain/text, всю голову сломал, использую async-http:14
Игра отрисовывается в canvas, для удобства есть кнопка сделать на весь экран