代码之家  ›  专栏  ›  技术社区  ›  Nate Lockwood

如何在Java中将一个short打印为一个未签名的short

  •  14
  • Nate Lockwood  · 技术社区  · 14 年前

    我有一个short数组,它的值介于0和short的最大值之间。我缩放数据(将其显示为\u USHORT类型),使生成的短值介于0和65535之间。我需要打印一些缩放值,但不知道如何打印。数据在一个数组和一个buffereImage中。

    2 回复  |  直到 14 年前
        1
  •  33
  •   Jon Skeet    14 年前

    short s = ...;
    int i = s & 0xffff;
    

    位掩码用于使转换给出的值在0-65535范围内,而不是-32768-32767范围内。

        2
  •  22
  •   keplerian    7 年前

    Short.toUnsignedInt

    System.out.println("signed s=" + s + ", unsigned s=" + Short.toUnsignedInt(s))