返回信息流byte[] a=new byte[]{31,-117};
String s=new String(a);
byte[] b=s.getBytes();
a怎么会不等于b呢。。
这是一条镜像帖。来源:北邮人论坛 / java / #50397同步于 2016/5/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
String和byte[]转换
kuangfengwin
2016/5/18镜像同步13 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
明显强制类型转换成int再转成了char了吧。
【 在 kuangfengwin (扑通扑通Wind) 的大作中提到: 】
: 字节数组里就不是31和-117了呀
应该是 -128~127 吧?
【 在 Lamperouge 的大作中提到: 】
: -117搞的鬼,如果都是0-127的非负值就没问题
: 当然我也不知道具体搞得什么鬼
ASCII码的范围~ 虽然byte是表示-128~127之间的数值,但是变成String的话,那个-117可能就不知道对应到哪里去了
【 在 chinapds 的大作中提到: 】
: 应该是 -128~127 吧?
嗯的,它做了位拓展
【 在 ml3615556 的大作中提到: 】
: int to byte
: 取最低字节
: 你试试把-117的绝对值取反加1是不是就等了呀