在java上使用字节的布尔运算

时间:2014-03-28 01:49:12

标签: java boolean-logic

如何在字节之间进行下一步操作

byte a;
byte b;
byte c;
byte d;

byte result = (((not(a) and(b)) or(c)) xor(d);

那么java中 xor 的等效运算符是什么?

1 个答案:

答案 0 :(得分:1)

如果你真的想把字节视为布尔值(老实说,我会有兴趣知道为什么,并且可能会阻止你这样做),那么我建议你创建一些返回true或false的实用函数。无论你认为真假都应该等同于。我在此假设0表示false1表示true

例如:

public static final boolean isTrue(byte num)  {
   return  (num == 1);
}
public static final boolean or(byte num1, byte num2)  {
   return  (isTrue(num1)  ||  isTrue(num2));
}

等等。然后你可以排序按你的意愿进行评估:

if(!isTrue(a)  &&  xor(c, d))  {
    //do stuff...
}