关于java中String.getBytes()问题

都说是得到一个系统默认的编码格式的字节数组,可是这个字节数组里面存放的数据代表什么。比如Stringstr="你";byte[]bytes=str.getBytes();... 都说是得到一个系统默认的编码格式的字节数组,可是这个字节数组里面存放的数据代表什么。比如
String str = "你";
byte[] bytes = str.getBytes();
for(int i = 0;i < bytes.length;i++){
System.out.println(i+":"+bytes[i]);
}
输出:
0:-28
1:-67
2:-96
这-28,-67,-96表示的是什么呢?
展开
 我来答
Cry_小衰
推荐于2017-09-13 · TA获得超过219个赞
知道小有建树答主
回答量:172
采纳率:0%
帮助的人:138万
展开全部
api中
getBytes():使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。 当此字符串不能使用默认的字符集编码时,此方法的行为没有指定。如果需要对编码过程进行更多控制,则应该使用 CharsetEncoder
类。

http://www.blogjava.net/baizhihui19870626/articles/388054.html这个是对字符集的解释 根据不同的编码格式 得到的数据也不一样
我恨死你的
2014-04-01 · TA获得超过443个赞
知道小有建树答主
回答量:291
采纳率:42%
帮助的人:87.1万
展开全部
你用的是UTF8的编码吧,一个中文需要三个字节存储的,具体的byte并没有特殊的意思;只不过一个汉字需要24位来标识,你拆分成三个八位的byte,比如00000001。System.out对象会输出一个数字。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式