方案二:利用Java位运算符,完成Unsigned转换. 正常情况下,Java提供的数据类型是有符号signed类型的,可以通过位运算的方式得到它们相对应的无符号值,参见几个方法中的代码: public int getUnsignedByte (byte data){ //将data字节型数据转换为0~255 (0xFF 即BYTE). return data&0x0FF; } public int getUnsignedByte (short data){ //将data字节型数据转换为0~6…
如果要搞懂Java中的位运算符,首先要搞懂二进制的运算,之前一篇有介绍详细请看 二进制运算-十进制与二进制的转换 Java中的位运算符有:&(按位与).|(按位或).^(按位异或).>>(右移).<<(左移).~(取反).>>>(无符号右移) 下面来逐一介绍: &(按位与) int i = 5&2; int j = 7&3; System.out.println("i="+i);//i=0 System.out.…
算术运算符 1.java的算数运算符包括+(加).-(减).*(乘)./(除).%(取余),在运算过程中出现的隐式转换原则和C语言一样:2. 高位数据向低位数据转化要使用强制转化: 关系运算符 1.java的关系运算符包括>.<.>=.<=.==.!=,其使用规则和C语言一样,在复杂的关系运算语句中同样有短路原则:2.java逻辑运算的结果使用输出语句输出答案只能是false或者true,结果是boollean类型,这一点跟C语言不一样! public class Operator…