Java语言中,中文字符所占的字节数取决于字符的编码方式,一般情况下,采用ISO8859-1编码方式时,一个中文字符与一个英文字符一样只占1个字节;采用GB2312或GBK编码方式时,一个中文字符占2个字节;而采用UTF-8编码方式时,一个中文字符会占3个字节,特别的占用4个字节。
解决方案:
测试1:
"中文".getBytes("ISO8859-1").length
测试2:
"中文".getBytes("utf-8").length//一个中文三个字节存储
测试3:
"中文".getBytes().length//没写默认为一个中文两个字节
测试4:
"中文".length//默认是一个中文一个字节