问关于getBytes()的问题
定义了字符串:str= "我ABC汉字d "后
byte[] bytes = str.getBytes();
System.out.println(bytes.length);
结果输出的是10
然后我不明白的是在java中不是一个字符占两个字节吗?
但根据结果来看,它好象是按照一个字节来算的
请问哪位知道是怎么回事情,或许我对哪里理解不对了
非常感谢!
------解决方案--------------------汉字占两个字节,字符占一个字节.
------解决方案--------------------up
------解决方案--------------------java一个字符确实占两个字节,但是getBytes()会把英文字符编码成占一个字节
------解决方案--------------------GB2312编码,ascil字符用单字节表示.