逻辑运算符
逻辑运算符的作用:用于连接多个条件(多个关系表达式),最终的结果是一个boolean值。
说明逻辑运算规则: 1) a&b : & 叫逻辑与:规则:当 a 和 b 同时为 true ,则结果为 true, 否则为 false
2) a&&b : && 叫短路与:规则:当 a 和 b 同时为 true ,则结果为 true,否则为 false
3) a|b : | 叫逻辑或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false
4) a||b : || 叫短路或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false
5) !a : 叫取反,或者非运算。当 a 为 true, 则结果为 false, 当 a 为 false 是,结果为 true
6) a^b: 叫逻辑异或,当 a 和 b 不同时,则结果为 true, 否则为 false
值得注意的是java中执行的短路执行,当短路于中第一个为flase的时候结果也就是false,他不会再去比较第二个条件是真或者假。但是逻辑与则会同事比较两个条件的结果。
同样的当短路或中第一个结果为TRUE时,他不用再去比较第二个条件的结果。但是逻辑或则会比较两个结果的值。这样看来短路于和短路或的执行效率会更加 高效。
三元运算符:
条件表达式 ? 表达式 1: 表达式 2;
运算规则: 1. 如果条件表达式为 true,运算后的结果是表达式 1;
2. 如果条件表达式为 false,运算后的结果是表达式 2;
口诀: [一灯大师:一真大师
例子:
int a>b?a:b;
要注意的是a和b的类型要是可以互相转化的,或者说是相同的。这是因为不同类型之间是不能比较的。(除了自动转化的类型之外。)