public class A {
public static void main(String[] args)
{
boolean a = false ,b =true ,c =false,d =true;
a =b^c^d;
System.out.println(a);
int a1 = 0, b1 =1, c1 =2;
a1 = b1^c1;
System.out.println(a1);
}
}
int a1 = 0, b1 =1, c1 =2;
a1 = b1^c1;
System.out.println(a1);麻烦大家帮我解释下,谢谢了
public static void main(String[] args)
{
boolean a = false ,b =true ,c =false,d =true;
a =b^c^d;
System.out.println(a);
int a1 = 0, b1 =1, c1 =2;
a1 = b1^c1;
System.out.println(a1);
}
}
int a1 = 0, b1 =1, c1 =2;
a1 = b1^c1;
System.out.println(a1);麻烦大家帮我解释下,谢谢了
0 0 1 1
^ 0 1 0 1
---------
1 0 1 0
所以b1 = 1 = 01 ^ c1 = 2 =10
b1 01
c1 10
^ 11 = 3
适用场合:判断数字对应的位是否相同。
示例代码:
int a = 1;
int b = 2;
int c = a ^ b;
计算过程:
4的二进制形式为 0000 0000 0000 0000 0000 0000 0000 0001
10的二进制形式为 0000 0000 0000 0000 0000 0000 0000 0010
按照计算规则结果为 0000 0000 0000 0000 0000 0000 0000 0011
这个数字转换为十进制就是数字3
是
1的二进制形式为 0000 0000 0000 0000 0000 0000 0000 0001
2的二进制形式为 0000 0000 0000 0000 0000 0000 0000 0010