码点,代码单元,char类型

原创
2017/11/23 17:28
阅读数 261
  • 码点:就是一个字符对应的十六进制编码
  • 代码单元:就是一个十六位(UTF-16)的二进制数(2字节)
  • char类型:就是一个十六位的二进制数,在java中用来表示一个代码单元
  • UTF-8:1字节是最基本单元,即,最少可以用一个字节代表一个unicode字符。(有时候需要2-3(4?)个字节)
  • UTF-16:2字节是最基本单元,即,最少使用两个字节代表一个unicode字符。(有时候需要4个字节)

java中的char类型保存的是UTF-16编码中的两字节(也就是代码单元),所以一个char类型不能对应unicode中的所有字符(因为有时候需要用四个字节表示)。 所以java中不建议采用char类型保存字符,而建议使用String。

  • length() 返回代码单元数量,码点数量使用codePointCount获取
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部