一、短路或运算 A || B
短路或是Java中的一个逻辑运算符,记作“||”。 如果任何两个操作数任何一个为真,条件为真。
- 在第一个条件为真时,跳过第二个条件表达式、不去执行。也就是说当运算符“||”的左边为true时,右边的表达式就不会进行运算;当左边为false时,计算右边的值。
- 只有a与b都为false,结果才为false;有一个为true,结果为true。
int i = 1;
int j = 2;
boolean result =(i !=1)||(++j >2);
System.out.println(result); //true
System.out.println(j ); //3
- true || true 结果为 true
- true || false 结果为 true
- false || false 结果为 false
- false || true 结果为 true
二、 短路与运算 A&&B
具有短路性质 ,只要有一个条件为假时, 则为假。
也就是当且仅当两个操作数都为真,条件才为真。
- 当A为false时,不去计算B的值而直接返回false;
- 当A为true 时,计算B的值。
// true &&(and) (执行)false => false
// false* &&(and) (不执行)false => false
- 或运算 |(or)
// true |(or) (执行)false => true
// false |(or) (执行)true => true
- 与运算 &(and)
// true &(and) (执行)false => true
// false &(and) (执行)false => false