「这是我参与2022首次更文挑战的第33天,活动详情查看:2022首次更文挑战」。
- 关系运算符
1.1关系运算符
```
/*
关系运算符
*/
public class OperatorDemo{
public static void main(String[] args){
//定义变量
int i = 10;
int j = 20;
int k = 10;
//==
System.out.println(i == j);
System.out.println(i == k);
//!=
System.out.println(i != j);
System.out.println(i != k);
//>
System.out.println(i > j);
System.out.println(i > k);
//>=
System.out.println(i >= j);
System.out.println(i >= k);
//不下心把==写成了=
//把j的值赋值给了i,然后输出i的值
System.out.println(i = j);
}
}
```
notes:
关系运算符的结果都是boolean类型,要么是true,要么是false; 千万不要把“==”写成“=”。
- 逻辑运算符
2.1逻辑运算符概述 在数学中,一个数据x,大于3,小于6,我们可以这样来进行表示:3<x<6。 在Java中,需要把上面的式子先进行拆解,再进行合并表达
拆解为:x>3和x<6 合并为:x>3&&x<6
&&其实就是一个逻辑运算符; 逻辑运算符,是用来连接关系表达式的运算符 逻辑运算符也可以直接连接布尔类型的常量或者变量
```
/*
逻辑运算符
*/
public class OperatorDemo{
public static void main(String[] args){
//定义变量
int i = 10;
int j = 20;
int k = 30;
//& 有false则false
System.out.println((i > j) & (i > k));
System.out.println((i < j) & (i > k));
System.out.println((i > j) & (i < k));
System.out.println((i < j) & (i < k));
System.out.println("--------");
//| 有true则true
System.out.println((i > j) | (i > k));
System.out.println((i < j) | (i > k));
System.out.println((i > j) | (i < k));
System.out.println((i < j) | (i < k));
System.out.println("--------");
//^ 相同为false,不同为true
System.out.println((i > j) & (i > k));
System.out.println((i < j) & (i > k));
System.out.println((i > j) & (i < k));
System.out.println((i < j) & (i < k));
System.out.println("--------");
//!
System.out.println((i > j));
System.out.println(!(i > j));
System.out.println(!!(i > j));
System.out.println(!!!(i > j));
}
}
```
2.2逻辑运算符
2.3短路逻辑运算符
```
/*
短路逻辑运算符
*/
public class OperatorDemo{
public static void main(String[] args){
//定义变量
int i = 10;
int j = 20;
int k = 30;
//& 有false则false
System.out.println((i > j) && (i > k));
System.out.println((i < j) && (i > k));
System.out.println((i > j) && (i < k));
System.out.println((i < j) && (i < k));
System.out.println("--------");
//| 有true则true
System.out.println((i > j) ||(i > k));
System.out.println((i < j) ||(i > k));
System.out.println((i > j) ||(i < k));
System.out.println((i < j) ||(i < k));
System.out.println("--------");
//&&和&
//System.out.println((i++ > 100) & (j++ > 100));
System.out.println((i++ > 100) && (j++ > 100));
System.out.println("i:" + i);
System.out.println("j:" + j);
}
}
```
notes:
-
逻辑与&,无论左边真假,右边都要执行
-
短路与&&,如果左边为真,右边执行;如果右边为假,右边不执行
-
逻辑或|,无论左边真假,右边都要执行
-
短路或||,如果左边为假,右边执行;如果左边为真,右边不执行