學習 unicode

前記

     應用A和B交換數據, 藉助中間件T. 數據格式: 字段分割符采用\u0005, 行分割符采用\u0001。

Q:如何理解\u0005和\u0001?
A:\u0005和\u0001是unicode值。  java中,char類型用UTF-16編碼描述一個代碼單元

知識點
1.  Unicode編碼單元可以表示爲16進制值,其範圍從\u0000到\uffff。因此\u表示轉義字符, 表示一個Unicode代碼單元.
相對於其他轉義字符,\u轉義符可以出現在字符常量或字符串的引號之外.

2. 利用System.out.println('\u0005'); 什麼也沒輸出, 這是因爲unicode編碼裏面是控制字符,不是打印字符。

Demo
public class CharacterDemo {
    public static void main(String[] args) {
        char ctrlChar1 = '\u0001';
        char ctrlChar5 = '\u0005';
        char tab = '\u0009';
        char ni = '\u4f60';
        char hao = '\u597d';
        System.out.println('\u0005');
        System.out.println(ctrlChar1 + ctrlChar5); // 6, 說明兩個char相加, 本質是code值相加
        System.out.println(ctrlChar1 + "" + ctrlChar5); // 
        System.out.println(tab+1); // 10
        System.out.println("ha"+tab+"ha"); // ha    ha
        System.out.println("ha"+"\t"+"ha");// ha    ha 
        System.out.println(ni + hao); //  43229
        System.out.println(ctrlChar5 + "" + ni + hao); // 你好
    }
}


發佈了103 篇原創文章 · 獲贊 75 · 訪問量 75萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章