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

关于字符串代码点和代码单元的有关问题,迷糊中

2012-01-03 
关于字符串代码点和代码单元的问题,迷糊中一个字符串的length()返回的是代码单元的个数,而codePointCodeCo

关于字符串代码点和代码单元的问题,迷糊中
一个字符串的length()返回的是代码单元的个数,
而codePointCodeCount(0,length())返回的是代码点的个数,如果一个字符串包含
4个字符,其中一个字符占用两个代码单元,那么这个字符串的代码单元数是5个,代码点的个数是4个,其中一个代码点占用了两个代码单元。不知道这么理解对不对。
如果是对的,那么一个代码单元应该占用多少个字节呢,UTF-16编码里,是不是一个英文字母占用一个字节,而一个汉字(非特殊)占用两个字节。如果一个字符串
a= "m马li ",其中m应该占用一个代码单元占用空间是1个字节,那么按理说 "马 "应该占用两个代码单元啊,那为什么a.length()返回的是4而不是5呢,迷糊中。。大侠帮小弟解释一下。

[解决办法]
length()是返回字符个数,不是字节数
[解决办法]
length返回的是代码单元的个数~~`

热点排行