位运算

 1 package day06;
 2 
 3 public class BitOperation {
 4     /*位运算符:指的是二进制的运算,先将十进制数转成二进制后再进行运算。
 5     在二进制位运算中,1表示true,0表示false
 6     &位与:遇到false则false,遇0则0
 7       00000000 00000000 00000000 00000110   //6的二进制
 8     & 00000000 00000000 00000000 00000010   //2的二进制
 9       ---------------------------------------
10       00000000 00000000 00000000 00000010   //结果:2
11       |位或:遇到true则true,遇1则1
12       ^位异:相同为false,不同为true
13       ~取反:全部区分,0变1,1变0
14      */
15     public static void main(String[] args) {
16         System.out.println(5 & 2);
17         System.out.println(~2);
18     }
19 }

执行结果:

eg:

1 package day06;
2 
3 public class Demo02 {
4     /*运算符的特点:一个数被另一个数异或两次,该数本身不变*/
5     public static void main(String[] args) {
6         System.out.println(10 ^ 5 ^ 10);
7         System.out.println(10 ^ 5 );
8     }
9 }

执行结果:

欢迎批评指正,提出问题,谢谢!
原文地址:https://www.cnblogs.com/xxeleanor/p/14218856.html