char[] 和 String 类型占用字节大小问题 - 蓝蓝设计_UI设计公司

帝皇彩票官网

追求卓越一诺千金

蓝蓝设计,2011年成立,主创清华团队,专注软件和互联网ui设计开发。擅长企业信息化管理、监控、大数据软件UIUE咨询和设计开发服务。立足UI,好好学习,天天进步!


char[] 和 String 类型占用字节大小问题

2019-8-8 释然 前端及开发文章及欣赏


如果您想订阅本博客内容,每天自动发到您的邮箱中,

在 C 语言中
1、char a[10] = {"China"} 中,这个 a 占用多少字节?

答:占用 10 个字节。

解析:上面代码对 a 做了赋值的操作,

a[0]='C' ,a[1]='h' ,a[2]='i' ,a[3]='n' ,a[4]='a' ,a[5]='\0',a[6]='\0',a[7]='\0',a[8]='\0',a[9]='\0'

所以,它占用的是 10 个字节。

2、如果单指 ”China“ ?

答:共 6 个字节。China 占 5 个字节,最后以 '\0' 结束,占 1 个字节。

在 Java 语言中
1、String s = "China"; 占多少字节?

答:占 5 个字节。

System.out.println(Charset.defaultCharset());//获取ide默认编码类型
String s = new String("China".getBytes());
byte[] b = s.getBytes();
System.out.println("" + b.length);
 以上代码,可以输出 "China" 所占的字节长度为 5

2、String s = "中国"; 占多少字节?

答:如果是 汉字 的情况需要考虑编码。

(1)GBK 编码(ide默认)时,每一个汉字占用 2 个字节,那么中国占 4 个字节。

(2)UTF-8 编码时,每一个汉字占用 3 个字节,那么中国占用 6 个字节。

3、转码问题,GBK 转 UTF-8 时,字节占用会变大吗?反过来呢?

//获取的是 UTF-8编码
System.out.println(Charset.defaultCharset());
String s;
try {
        s = new String("中国".getBytes(),"GBK");
        byte[] b = s.getBytes();
        System.out.println("" + b.length);
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
}
如上代码是:UTF-8 转 GBK 编码格式,s 长度从 6 字节变为 9 字节。
s 内容变化:中国 —> 涓浗
因为当前编码是 UTF-8,转码之后变成了 3 个文字,占用 9 个字节。然而,反过来的情况是这样的:

中国 (gbk) —> ?й? (utf-8)
s 长度从 4字节 变成了 4字节,虽然长度没发生改变,但是文字已经改变。这里的 ? 占用 1 个字节。

蓝蓝设计www.bjhbys.com )是一家专注而深入的界面设计公司,为期望卓越的国内外企业提供卓越的UI界面设计、BS界面设计 、 cs界面设计 、 ipad界面设计 、 包装设计 、 图标定制 、 用户体验 、交互设计、 网站建设 平面设计服务

标签: char[] String 类型占用字节大小问题 « 2020年设计趋势 · 交互篇 | 设计师正在参与的战争——争抢用户注意力»


蓝蓝 http://www.bjhbys.com

  1. 2019年9月(22)
  2. 2019年8月(63)
  3. 帝皇彩票官网2019年7月(61)
  4. 2019年6月(59)
  5. 2019年5月(32)
  6. 2019年4月(37)
  7. 2019年3月(43)
  8. 2019年2月(26)
  9. 2019年1月(45)
  10. 2018年12月(41)
  11. 2018年11月(40)
  12. 2018年10月(29)
  13. 帝皇彩票官网2018年9月(40)
  14. 2018年8月(87)
  15. 2018年7月(107)
  16. 2018年6月(86)
  17. 2018年5月(110)
  18. 2018年4月(40)
  19. 2018年3月(35)
  20. 帝皇彩票官网2017年8月(35)
  21. 2017年7月(45)
  22. 2017年6月(7)
  23. 2017年5月(27)
  24. 2017年4月(51)
  25. 2017年3月(70)
  26. 2017年2月(65)
  27. 帝皇彩票官网2017年1月(69)
  28. 2016年12月(55)
  29. 2016年11月(111)
  30. 2016年10月(92)
  31. 2016年9月(53)
  32. 2016年8月(9)
  33. 2016年7月(4)
  34. 2016年6月(9)
  35. 2016年3月(19)
  36. 2016年2月(26)
  37. 2016年1月(30)
  38. 2015年12月(33)
  39. 2015年11月(35)
  40. 2015年10月(46)
  41. 帝皇彩票官网2015年9月(43)
  42. 2015年8月(40)
  43. 2015年7月(33)
  44. 2015年6月(46)
  45. 2015年5月(58)
  46. 2015年4月(70)
  47. 2015年3月(55)
  48. 2015年2月(17)
  49. 2015年1月(33)
  50. 2014年12月(21)
  51. 2014年11月(84)
  52. 2014年10月(94)
  53. 2014年9月(6)
  54. 2014年8月(1)
  55. 2014年7月(13)
  56. 2014年6月(66)
  57. 2014年5月(99)
  58. 2014年4月(88)
  59. 2014年3月(102)
  60. 2014年2月(68)
  61. 2014年1月(83)
  62. 2013年12月(106)
  63. 2013年11月(112)
  64. 2013年10月(61)
  65. 2013年9月(20)
  66. 2013年7月(13)
  67. 2013年6月(27)
  68. 2013年5月(48)
  69. 2013年4月(39)
  70. 2013年3月(8)
  71. 帝皇彩票官网2013年2月(20)
  72. 2013年1月(31)
  73. 2012年12月(33)
  74. 2012年11月(31)
  75. 帝皇彩票官网2012年10月(23)
  76. 2012年9月(8)
  77. 2012年7月(14)
  78. 2012年6月(15)
  79. 2012年5月(31)
  80. 帝皇彩票官网2012年4月(24)
  81. 2012年2月(4)
  82. 2012年1月(8)
  83. 帝皇彩票官网2011年12月(35)
  84. 2011年11月(32)
  85. 2011年10月(13)
  86. 2011年8月(1)
  87. 2011年6月(1)
订阅Rss
桔子彩票平台 迪士尼彩乐园 桔子彩票平台 吉利彩票登陆 桔子彩票网址 吉利彩票开奖 吉利彩票计划 王者彩票APP 安徽快3走势 上海11选5开奖