java 中可能有从 0 到 255 的字节吗?

Is possible have byte from 0 to 255 in java?

我有系统(在 c# 中)来控制用户访问。
对于特定情况,我需要在 java 中使用相同的访问控制器。
该控制器具有加密算法 (rijndael)。 我的问题是这个算法使用字节数组(byte[]); bytec# 中的类型是 0 to 255,在 java 中是 -128 to 127。这种差异会产生不同的结果。

如何让这两个代码使用相同的 字节数组

PS:我无法更改c#代码;如果可以的话,我会使用 sbyte 而不是 byte。

当您将无符号字节[]读入有符号字节[]时,none 的位在此过程中受到损害,并且没有数据丢失。不同之处仅在于如何处理最高位。如果你想将一个带符号的字节转换为 0 到 255 之间的值,你可以使用 0xFF 例如

int value = bytes[i] & 0xFF;

有人为您可能会使用的无符号类型开发了一个库: https://github.com/jOOQ/jOOU