如何从a
和b
获取c
?反向操作会是什么?
以下是代码:
class s
{
public static void main(String ar[])
{
int a = 20;
int b = 5;
int c = 0;
c = (a & b) ;
System.out.println(c);
int d = (c & b);
System.out.println(d);
}
}
答案 0 :(得分:8)
你做不到。如果c
中的位为0且b
中的相应位为0,则无法知道a
中的相应位是0还是1.通过类似的参数,按位或(|
运营商)也是不可逆转的。另一方面,按位XOR(^
运算符) 是可逆的。
答案 1 :(得分:1)
如果查看and
逻辑运算的真值表,可以看到它包含三个falses和一个true。因此无法逆转。
只有equals
和xor
具有平衡的真值表,它们是两个可逆的布尔运算符。