Java 中的字节 0xFF (11111111) 发生了什么?

What happened to the byte 0xFF (11111111) in Java?

我需要将字节 0xFF 发送给客户端,但是当我这样做时:

byte toSend = 0b11111111;
// or
byte toSend = 0xFF;

我收到一个编译错误,发送它无法从 int 转换为 byte。

我想确保我发送的字节的所有 8 位都设置为 1。我如何在 Java 中做到这一点?

您可以将其转换为字节:

byte toSend = (byte)0xFF;

忘记我回答的其他部分。我有点睡眠不足。实际上它是 -1 表示为 11111111。但是 (byte)0xFF 工作得很好。