首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

温习Java核心技术——卷1,第3章,Code Point

2012-10-09 
复习Java核心技术——卷1,第3章,Code Point趁着国庆节放假,好好复习一下Java核心技术这本好书。/** * 实验表

复习Java核心技术——卷1,第3章,Code Point
    趁着国庆节放假,好好复习一下Java核心技术这本好书。

/** * 实验表明,GBK比UTF-8所需要的codepoint更多,和UTF-16差不多。 * 一个代码点(code point)可能有一到两个代码单元(code unit) * @author Roy Zhang * */public class TestCodePoint{    public static void main(String[] args)    {        String greeting = "Hello★";        int n = greeting.length();        System.out.println(n); // is 5.        int cpCount = greeting.codePointCount(0, greeting.length());        System.out.println(cpCount); // is 5.        char first = greeting.charAt(0);        System.out.println(first); // is H        char last = greeting.charAt(greeting.length() - 1);        System.out.println(last); // UTF-16 and GBK will show ★        for (int i = 0; i < greeting.codePointCount(0, greeting.length()); i++)        {            int index = greeting.offsetByCodePoints(0, i);            int cp = greeting.codePointAt(index);            System.out.println(cp);// they are: 72, 101, 108, 108, 111, 9733        }        for (int i = 0; i < greeting.codePointCount(0, greeting.length()); )        {            int cp = greeting.codePointAt(i);            System.out.println(greeting.charAt(i));// they are: H, e, l, l, o, ★            if (Character.isSupplementaryCodePoint(cp))            {                // It does not work.                i = i + 2;            }            else            {                i++;            }        }    }}

热点排行