A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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?????

评分

参与人数 1技术分 +1 收起 理由
舍我其谁 + 1

查看全部评分

4 个回复

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

明了。多谢兄台
回复 使用道具 举报
秀头像,不要打我。。。。。
回复 使用道具 举报
曾小贤OL 发表于 2014-9-1 20:22
秀头像,不要打我。。。。。

水水更健康
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马