在我的字节数组中,我有一条消息的 哈希 值,它由一些负值和正值组成。使用 (char)byte[i]
语句可以轻松打印正值。
现在我怎样才能得到负值呢?
原文由 user631785 发布,翻译遵循 CC BY-SA 4.0 许可协议
在我的字节数组中,我有一条消息的 哈希 值,它由一些负值和正值组成。使用 (char)byte[i]
语句可以轻松打印正值。
现在我怎样才能得到负值呢?
原文由 user631785 发布,翻译遵循 CC BY-SA 4.0 许可协议
Arrays.toString(byteArray)
怎么样?
这是一些可编译的代码:
byte[] byteArray = new byte[] { -1, -128, 1, 127 };
System.out.println(Arrays.toString(byteArray));
输出:
[-1, -128, 1, 127]
为什么要重新发明轮子…
原文由 Bohemian 发布,翻译遵循 CC BY-SA 3.0 许可协议
8 回答6.5k 阅读
4 回答703 阅读✓ 已解决
2 回答3.4k 阅读
3 回答1.9k 阅读✓ 已解决
1 回答2.2k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
1 回答972 阅读✓ 已解决
好吧,如果你很高兴以十进制打印它,你可以通过屏蔽使其成为正数:
但是,如果您要打印散列,则使用十六进制会更传统。在 Stack Overflow 上还有很多其他问题解决了将二进制数据转换为 Java 中的十六进制字符串的问题。