上一节不是提到中文大部分占两个字节码,为啥这里会除以 3
来源:3-2 Java String 可以有多长?

慕九州6385248
2019-11-25
如果字符串中是汉字,那么长度是 65535/3,上一节讲在 class 文件中中文字符大部分占两个字节,这里为什么不是除以 2
写回答
2回答
-
前一节讲的是内存,内存里面存的是Utf16编码,汉字多数占两个字节,也有4个字节的,如果你在控制台打印出来还会多两个字节的字节序标志;字节码里面存的是mutf8编码,汉字一般占3个字节。主要编码不同
142020-10-18 -
bennyhuo
2020-10-18
回复问汉字存储的同学,视频当中有详细讲解,受限于较多的因素,例如字节码存储的限制,汉字以 MUTF-8 编码的字节存储于字节码当中等等
当然,这只是其中的一种情况,详细的分析还是看视频吧。不知道同学对视频当中那部分内容有疑问?
092020-10-20
相似问题