嘿,我只是剛開始嘗試學習Java,並遇到了一些令人困惑的事情!Java Unicode混淆
我從我正在使用的書中輸入一個示例。它將演示 char數據類型。
的代碼如下:
public class CharDemo
{
public static void main(String [] args)
{
char a = 'A';
char b = (char) (a + 1);
System.out.println(a + b);
System.out.println("a + b is " + a + b);
int x = 75;
char y = (char) x;
char half = '\u00AB';
System.out.println("y is " + y + " and half is " + half);
}
}
是困惑我的是位的聲明,焦炭半= '\ u00AB'。該書指出\ u00AB是符號'1/2'的代碼。如上所述,當我從cmd編譯並運行該程序時,該行上生成的符號實際上是'1/2'。
因此,一切看起來都是應該的。我決定玩弄代碼並嘗試一些不同的unicode。我搜索了多個unicode表,發現它們都不符合上述結果。
在每一個我發現它說,該代碼/ u00AB不是爲「1/2」和實際上這個:
http://www.fileformat.info/info/unic...r/ab/index.htm 那麼什麼字符Java中使用集,我還以爲UNICODE應該就是這樣,Uni,只有一個。我已經搜索了幾個小時,無處可以找到一個指出/ u00AB等於1/2的字符集,但這正是我的java編譯器解釋的。
我必須在這裏丟失一些明顯的東西!謝謝你的幫助!
我推薦這篇文章,以幫助理解你所面臨的問題:絕對最低每一個軟件開發人員絕對,積極必須知道的關於Unicode和字符集] (http://www.joelonsoftware.com/articles/Unicode.html) – 2011-01-20 13:26:04