Java 检查来自外部源的数据是否为正或负&;把它拿来';s值
我有3个字节的数据,来自外部源。我以前很长时间都在存储这些数据,现在我需要检查即将到来的数据是负数还是正数。为此,我使用了以下代码:Java 检查来自外部源的数据是否为正或负&;把它拿来';s值,java,android,Java,Android,我有3个字节的数据,来自外部源。我以前很长时间都在存储这些数据,现在我需要检查即将到来的数据是负数还是正数。为此,我使用了以下代码: long min = Long.MIN_VALUE; long i = ((longData+ min) & 0xFF) - min; if(i <0) { System.out.print(i+"negative"); } else System.out.pri
long min = Long.MIN_VALUE;
long i = ((longData+ min) & 0xFF) - min;
if(i <0)
{
System.out.print(i+"negative");
}
else
System.out.print(i+"positive");
long min=long.min\u值;
长i=((longData+min)和0xFF)-min;
如果(i,这取决于“负”的含义以及如何将3个字节转换为long
值。如果将3个字节存储在long的3个最低有效字节中,并且如果“负”表示设置了最高位,则应能使用:
if ((longData & (1L<<23)) != 0) {
System.out.print(i+"negative");
}
else {
System.out.print(i+"positive");
}
if((longData&)你说“它不工作”是什么意思?谢谢Klas,是的,我也是这么做的……但是(1L@Andy:更正了我的答案。@Andy@KlasLindbäck:注意操作符的优先级。@michael感谢您指出这一点。添加了一组额外的括号。