美文网首页
java 中 char 和 byte 的区别

java 中 char 和 byte 的区别

作者: 坚强一点 | 来源:发表于2017-05-01 16:41 被阅读0次

char 是字符,byte 是字节,都可以强制转换为一个整数。(char 强制转换为整数表示 这个字符对应的  Unicode 码的位置)

char 是无符号型的,大小范围为 0 -66535 (对应的 Unicode 码位置)

byte 是字节 ,有符号型的,大小范围是  -128-127  

char 可以表示中文,因为Unicode编码中包含了中文

byte 不可以表示中文。

char 转换为 byte,

char t = '中';

CharBuffer cb = CharBuffer.allocate(1);

cb.put(t);

cb.flip();

ByteBuffer bb = Charset.forName("utf-8").encode(cb);

byte [] b = bb.array();

转换后的byte长度,谁字符编码不同而不同。

utf-8 编码 :英文字母转byte 后占1个字节长度,中文占3个字节长度

gbk 编码:无论英文,中文都占2个字节长度

相关文章

网友评论

      本文标题:java 中 char 和 byte 的区别

      本文链接:https://www.haomeiwen.com/subject/qazftxtx.html