如何在Java中将短整作为无符号短路打印
我有一个空头数组,其值范围介于 0 和空头的最大值之间。我缩放数据(将其显示为TYPE_USHORT),以便生成的短值范围在 0 到 65535 之间。我需要打印一些缩放值,但不知道如何打印。数据位于数组和 BufferedImage 中。
我有一个空头数组,其值范围介于 0 和空头的最大值之间。我缩放数据(将其显示为TYPE_USHORT),以便生成的短值范围在 0 到 65535 之间。我需要打印一些缩放值,但不知道如何打印。数据位于数组和 BufferedImage 中。
最简单的方法是转换为 int:
short s = ...;
int i = s & 0xffff;
位掩码是使转换给出一个介于 0-65535 范围内的值,而不是 -32768-32767。
从Java 1.8开始,可以使用以下命令完成相同的操作:Short.toUnsignedInt
System.out.println("signed s=" + s + ", unsigned s=" + Short.toUnsignedInt(s))