JAVA中的UNICODE与字符集

java采用UNICODE来表示字符,究竟是怎么表示的呢?其实就是int类型与char的对应关系。char强制转化为int的数值,再转换为16进制,就是UNICODE中的代码点,如下代码:
char c = '一';
System.out.println((int)c);
System.out.println(Integer.toHexString(c));
输出结果为:
19968
4e00
以上2个数值,就是这个字符在UNICODE码表中的位置,也就是代码点(code point),是一个抽象的概念,和具体的字符集无关。在java中,char是用2个字节表示的,所以,最多只能支持65536个字符。事实上,UNICODE支持的字符数要大于65536,为此,java中采用了拼2个char的方式,来表示超出65536范围的字符(就是java中提到的增补字符)。具体,可以参考Character相关的javadoc文档。

同样,可以根据一个UNICODE代码点(int数值),来输出对应的UNICODE字符,如下代码:
for (int i=0;i<256;i++) {
System.out.println((char)i);
}
输出的不可打印字符,用表示了。

ASCII码表及ISO-8859-1中,字符的HTML Entity Code数值都是采用代码点的10进制表示的。

UNICODE官方网址:http://www.unicode.org

待完善...
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值