碼點和代碼單元

package core1;

public class D04_CodePoint {
    public static void main(String[] args){
        /*
        * .字符串由char值序列組成,char是使用UTF-16編碼表示Unicode碼點的代碼單元。
        * .大多數的經常使用Unicode字符使用一個代碼單元就能夠表示,而輔助字符須要一對代碼單元表示
        * */
        {
            String str = "hello世界";
            System.out.println("代碼單元數量:" + str.length());

            //碼點操做
            System.out.println("碼點數量:" + str.codePointCount(0, str.length()));
            //字符串轉換成碼點序列
            int[] codePoints = str.codePoints().toArray();
            //遍歷碼點序列
            for(int i=0 ; i<codePoints.length ; i++){
                System.out.println(codePoints[i]);
            }
            //根據碼點建立字符串
            String str2 = new String(codePoints, 0, codePoints.length);
            System.out.println(str2);
        }

    }
}

console輸出java

代碼單元數量:7
碼點數量:7
104
101
108
108
111
19990
30028
hello世界
相關文章
相關標籤/搜索