Java中char到底是多少字节?计算机等级考试

文章作者 100test 发表时间 2010:01:01 12:30:45
来源 100Test.Com百考试题网


  先弄清楚:

  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。



相关文章


JavaEE项目中异常处理计算机等级考试
Javascript操作0select控件大全计算机等级考试
FlexSocket与Java通讯客户端写法计算机等级考试
Java使窗口最小化为图标计算机等级考试
Java中char到底是多少字节?计算机等级考试
JAVA遍历Map所有元素计算机等级考试
java颜色选择器计算机等级考试
java实现太极八卦的绘制计算机等级考试
使inputtype=file不可编辑计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛