package Bao2;
public class Day2 {
public static void main(String[] args) {
// 与(and) 或 (or) 非 (取反)
boolean a = false;
boolean b = true;
System.out.println("a && b:" +(a && b)); // 逻辑与运算;两个都是真,结果才是真
System.out.println("a || b:" +(a || b)); // 逻辑或运算:两个有一个为真,就是True
System.out.println("! (a && b):" + !(a && b)); // 如果是真取反为假,否则反之
//短路运算
int c = 5;
boolean d = (c<4)&&(c++<4);
System.out.println(d); //在进行&&和运算是,有一个为假就是假,所以当第一个就是假是,直接结束运行
System.out.println(c); // c = 5
System.out.println("==================");
//位运算 & | ~ <<(左移) >>(右移);;位运算都是针对计算机底层二进制上的运算。
/*
A = 0011 1100
B = 0000 1101
A&B = 0000 1100 和运算
A|B = 0011 1101 或运算
A^B = 0011 0001 异或运算,相同为0,不同为1
~B = 1111 0010 取反运算
2*8 = 16 2*2*2
效率高!!
<< *2 (2<<3) 2*2*2*2
>> /2
*/
System.out.println(2<<3); //0000 0010 左移三位 即 0001 0000
}
}
![image]()