1. 程式人生 > 其它 >Unicode in Java

Unicode in Java

Java程式是使用Unicode字符集編寫,在編譯時Java程式裡的Unicode字元會被逐一轉換成token

ℹ️ 可以在類Character類中檢視到當前Java版本使用哪個Unicode字符集


Unicode字符集使用16位字元的編碼方式,建立時用U+0000U+FFFF就能表示所有字元。但是隨著世界各種文字字元的加入,16位編碼就顯得不足了

當下合法的Unicode字元編碼集的碼點(code point)從U+0000U+10FFFF

但是U+FFFF是16位能夠表示的最大字元

碼點超過U+FFFF的字元叫做補充字元(supplementary characters)

因此Unicode官方定義了UTF-16編碼方式,在這個方式下,補充字符集的字元使用兩個Unicode字元組合來表示

第一個字元使用的Unicode字符集從U+D800U+DBFF

第二個字元使用的Unicode字符集從U+DC00U+DFFF

⚠️ 不要混淆Unicode字符集,UTF-16編碼方式的概念

ℹ️ 因此在Java中,語義字元的確切名稱叫做UTF-16碼元(code unit),一個Unicode字元的確切名稱叫做碼點(code point)