有人問過類似question。但我真的沒有得到答案。Unicode代碼點和java字符
,當我說 char myChar = 'k'
在java中它會爲它保留16位(根據以下Java文檔?
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
現在可以說我有一個Unicode字符「電」,並假定其代碼點是像U + FFFF1該代碼點無法存儲在2個字節,所以纔會在java爲它分配額外的字節(UTF-16基於字符串)
總之,當我有這樣的事情? -
char myChar = '電'
假設它的代碼點表示很長並且需要多於2個字節。
myChar多少位將有 - 16或32
感謝
如果您沒有得到答案,請在此澄清。不要發佈重複;他們使得更難以找到問題的好答案,當每個克隆獨立於其他克隆而存在時,都有自己的答案。 – 2014-09-02 21:37:11
我同意!但在這種情況下,這個問題已經有4年了(已經選擇了一個軟件),實際上並沒有談論代碼點。 – Tintin 2014-09-02 21:43:09
老問題的接受答案始於「Java字符串是UTF-16(大端),所以Unicode代碼點可以是一個或兩個字符」。如果需要澄清,應該對現有問題的答案作出解釋。 – 2014-09-03 04:56:09