比较运算符是**用于比较两个值的一类运算符,其结果是一个布尔值,即真(TRUE)或假(FALSE)**。以下是几个重要的点:
- **比较的内容**:比较运算符可以比较数值、字符甚至某些类型的对象。在比较时,它们检查左边和右边的操作数是否符合特定的条件。
- **结果类型**:无论比较的是什么类型的操作数,比较运算符的结果总是一个布尔值,即逻辑上的真或假。
此外,在进行比较时,需要注意不要将比较运算符与赋值运算符混淆,例如`=`是赋值运算符,而`==`是比较运算符。
综上所述,比较运算符在编程中扮演着至关重要的角色,特别是在控制流程语句(如if语句和循环)中,它们决定了程序执行的方向和逻辑。
&: 与 (有false则false)
|: 或 (有true则true)
&&: 双与 有false则false, 具有短路效果,左边为false右边不执行
||: 双或 有true则true, 具有短路效果, 左边为true右边不执行
public class Operator07 {
public static void main(String[] args) {
// &&: 双与 有false则false, 具有短路效果,左边为false右边不执行.提高效率
System.out.println(false && false); // false
System.out.println(true && false); // false
System.out.println(false && true); // false
System.out.println(true && true); // true
int i = 5;
int j = 6;
// false
System.out.println(i == j && ++i > 1);
System.out.println("i = " + i); // i = 5,说明右边没有执行, &&具有短路效果,左边为false右边不执行
// 为什么左边为false右边可以不执行? &&是有false则false,既然左边是false,结果肯定是false,没有必要执行右边
System.out.println("------------------");
// ||: 双或 有true则true, 具有短路效果, 左边为true右边不执行,提高效率
System.out.println(false || false); // false
System.out.println(true || false); // true
System.out.println(false || true); // true
System.out.println(true || true); // true
int m = 5;
int n = 5;
// true
System.out.println(m == n || ++m > 1);
System.out.println("m = " + m); // m = 5, 说明右边没有执行, ||具有短路效果,左边为true右边不执行
// 为什么左边为true右边不执行, ||是有true则true,既然左边是true,结果肯定是true.不用执行右边,提高效率
/*
什么时候使用&&,什么时候使用||
规律:2个条件都要满足使用&&, 满足一个条件即可使用||
举例:
你去相亲,要求是女的,活的. (女的&&活的)
你去相亲,要求是漂亮的或者有钱的 (漂亮的||有钱的)
*/
}
}