1
我嘗試一個UTF字符存儲如下:UTF字符
char utfChr1 = '\u1F6BF';
至極給我一個無效字符常量錯誤。
char utfChr2 = '\uE517';
工作正常。我可以將字符設置爲FFFF,並且在沒有編譯器錯誤的情況下工作。但是超過65535(10000)的任何內容都會給我這個錯誤。我能做什麼?
我嘗試一個UTF字符存儲如下:UTF字符
char utfChr1 = '\u1F6BF';
至極給我一個無效字符常量錯誤。
char utfChr2 = '\uE517';
工作正常。我可以將字符設置爲FFFF,並且在沒有編譯器錯誤的情況下工作。但是超過65535(10000)的任何內容都會給我這個錯誤。我能做什麼?
類型char
是Java中的16位。因此只支持UTF-16。
我會說「不要試圖用它作爲常量」,但我不確定你打算如何處理它。您始終可以通過支持您要查找的字符的編碼從外部來源讀取值。
編輯: 我看到你想使用的字符SHOWER :)
你可以從鏈接看到,它的編碼爲2個字符在UTF-16:\uD83D\uDEBF
相關:HTTP:/ /stackoverflow.com/questions/13112435/how-does-java-store-utf-16-characters-in-its-16-bit-char-type – 2014-12-02 15:02:09