主要为:与运算(&)、或运算(|)、非运算(^)
左移(<<)与右移(>>)
public class Demo_01 {
public static void main(String[] args) {
// 位运算
/*
* A = 0011 1100
* B = 0000 1101
*
* A&B 0000 1100 A和B全为1,对应位置上才是1;
* A|B 0011 1101 A和B只有一个是1,对应位置上才是1;
* A^B 0011 0001 A和B对应位置相同为1,否则为1;
* ~B 1111 0010 (取反)
*
* 效率极高!!
* 2*8 = 16 2*2*2*2
* << :左移 *2
* >> :右移 /2
* 例如:
* 0000 0010 :二进制2
* 左移三位:2<<3 0001 0000 = 16
* 0001 0000 = 16
* 右移三位:16>>3 0000 0010 = 2
* */
System.out.println(16>>3); // 结果为 2
System.out.println(2<<3); // 结果为16
}
}
声明:所写内容皆为学习狂神Java中本人不太熟悉的内容!无意侵权!!!
向狂老师虚心学习!