zoukankan      html  css  js  c++  java
  • 利用Java位运算符,完成Unsigned转换(无符号)

    方案二:利用Java位运算符,完成Unsigned转换。

           正常情况下,Java提供的数据类型是有符号signed类型的,可以通过位运算的方式得到它们相对应的无符号值,参见几个方法中的代码:

          public int getUnsignedByte (byte data){        //将data字节型数据转换为0~255 (0xFF 即BYTE)。
             return data&0x0FF;
          }
    
          public int getUnsignedByte (short data){      //将data字节型数据转换为0~65535 (0xFFFF 即 WORD)。
                return data&0x0FFFF;
          }       
    
          public long getUnsignedIntt (int data){        //将int数据转换为0~4294967295 (0xFFFFFFFF即DWORD)。
             return data&0x0FFFFFFFFl;
          }

    其实,是使用更大的数据类型来存储无符号类型。

    例如:byte的无符号类型的大小:0~255,JAVA的byte类型是有符号的类型,范围:-128~127。用更大的int类型就可以存储无符号的byte。

    参考资料:

     http://www.xuebuyuan.com/935241.html

  • 相关阅读:
    ARTS第十一周
    ARTS第十周
    ARTS第九周
    一.Java技术现象
    ARTS第八周
    2019书单
    10.枚举的使用
    9.文件输入与输出
    软件模块化设计
    8.String API
  • 原文地址:https://www.cnblogs.com/H-BolinBlog/p/5593049.html
Copyright © 2011-2022 走看看