黑马程序员技术交流社区

标题: Java中一个字符占两个字节,可是为什么...... [打印本页]

作者: 隔夜修书    时间: 2014-9-1 19:21
标题: Java中一个字符占两个字节,可是为什么......
Java中一个字符占两个字节,可是为什
  1. public class Test1 {

  2.         public static void main(String[] args) {
  3.                 String str = "a";
  4.                 System.out.println(str.getBytes().length);
  5.         }

  6. }
复制代码

结果为1?????

作者: hejinzhong    时间: 2014-9-1 19:34
我相信楼主的编辑器,默认使用的编码是UTF-8
这是一种针对Unicode的可变长度字符编码,又称万国码。UTF-8用1到6个字节编码UNICODE字符。
之所以你的这个长度是1,就是因为编码时候只分配一个字节就够用了。
你可以试试用个汉字,长度不一定是2,可能是3。

作者: 隔夜修书    时间: 2014-9-1 19:43
hejinzhong 发表于 2014-9-1 19:34
我相信楼主的编辑器,默认使用的编码是UTF-8
这是一种针对Unicode的可变长度字符编码,又称万国码。UTF-8用 ...

明了。多谢兄台
作者: 曾小贤OL    时间: 2014-9-1 20:22
秀头像,不要打我。。。。。
作者: 隔夜修书    时间: 2014-9-1 20:53
曾小贤OL 发表于 2014-9-1 20:22
秀头像,不要打我。。。。。

水水更健康




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2