byte和char的区别_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > byte和char的区别

byte和char的区别

 2013/9/5 15:14:39  xiaosa3134  程序员俱乐部  我要评论(0)
  • 摘要:1:“字节”是byte,“位”是bit;2:1byte=8bit;char在java中是2个字节。java采用unicode,2个字节(16位)来表示一个字符。例:charx='我';Stringstr="我";byte[]bytes=str.getBytes();//我想不明白,为什么这里要占用3个byte呢?3个byte一共是3*8=24位;那么charx怎么又放得下?因为char是16位的啊??原因:byte[]bytes=str.getBytes();之后是3个字节
  • 标签:区别

?????? 1:“字节”是byte,“位”是bit ;
  2: 1 byte = 8 bit ;
  char 在java中是2个字节。java采用unicode,2个字节(16位)来表示一个字符。
  例:
  char x = '我';
  String str = "我";
  byte[] bytes = str.getBytes(); //我想不明白,为什么这里要占用3个byte呢? 3个byte一共是3*8=24位;
  那么char x 怎么又放得下?因为char是16位的啊??

  原因:
  byte[] bytes = str.getBytes();之后是3个字节,这里和前面的概念不一样。
  java是用unicode来表示字符,"我"这个中文字符的unicode就是2个字节。 String.getBytes(encoding)方法是获取指定编码的byte数组表示,通常gbk/gb2312是2个字节,utf-8是3个字节。如果不指定encoding则取系统默认的encoding。

????? 在Unicode中,每个字符都占两个字节。如,"中文123"(占10字节)。

?

?????? 字符人们使用的记号,抽象意义上的一个符号。 '1', '中', 'a', '$', '¥' ……
?????? 字节计算机中存储数据的单元,一个8位的二进制数,是一个很具体的存储空间。0x01, 0x45, 0xFA……
发表评论
用户名: 匿名