short转换成byte[]时,数值为负,请高手帮我看看程序啊。

kaiyekai kaiyekai 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我需要把一个short数值A放到数组里,当A>255时,需要两个字节的数组。我发现b[1]的值为负,和我想象中的不一样。

public static void putShort(byte b[], short s, int index) {
b[index] = (byte) ((s >> 8) & 0xff);
b[index + 1] = (byte) ((s >> 0) & 0xff);
}
例如 A=1234
期望值为: b[0]=0x04, b[1]=0xD2
真实值为:b[0]=0x04, b[1]=0x-46

大家能不能帮我看看,这个程序怎么改啊,多谢了!
...全文

相关推荐

评论 6
收藏 已收藏
分享
返回顶部
kaiyekai
J2ME 13,096 成员 26,491 内容