1.比较运算符
比较两个数字的大小相等的情况。 比较的结果是一个boolean值。(true 表示比较成功, false表示比较失败)
比较的运算符有:== , > , < , >= , <= , !=(不等于)
2.条件运算符
条件运算最终会根据条件从两个结果中返回其中的一个结果,这个条件是一个boolean结果。
条件运算符只有一个,语法如下:
boolean结果?值1:值2
boolean结果为true,最终的条件计算结果为值1
boolean结果为false,最终的条件计算结果为值2
int num1=1;
int num2=2;
System.out.println( num1 < num2 ? "相等" : "不相等" ) ;
//最终打印结果是 相等
3.逻辑运算符
逻辑运算符包含:&(逻辑与),|(逻辑或),!(非),&&(短路与),||(短路或)
- &(逻辑与)
连接左右两个boolean结果,最终计算出来的也是一个boolean结果。
如果左右两个boolean结果都是true,最终的计算结果就是true
如果左右两个有其中一个boolean结果是false,最终的计算结果就是false
int i = 5 ;
int j = 10 ;
boolean b = false ;
i < 20 & j > 5 ===> true
i < 20 & b == false ===> true
i < 20 & b ===> false
i < 20 & b=true ===> true
i = 20 & i>15 ===> 报错//因为左边不是boolean结果
- |(逻辑或)
连接左右两个boolean结果,最终的计算结果也是一个boolean
如果左右两个boolean结果都是false,最终的计算结果是false
只要左右两个有其中一个boolean结果是true,最终的计算结果是true
int i = 5 ;
int j = 10 ;
boolean b = false ;
i < 20 | j > 5 ===> true
i < 20 | b == true ==> true
i < 20 | b ===> true
i > 20 | b == false ===> true
- !(非)
只能作用在一个boolean结果的前面,最终的计算结果就是相反的boolean结果。
boolean b = false ;
!b ==> true
!(b==false) ===> false
!true ==> false
-
&&(短路与)
连接左右两个boolean结果,最终计算出来的也是一个boolean结果。
如果左右两个boolean结果都是true,最终的计算结果就是true
如果有一个boolean是false,最终的计算结果就是false
如果左侧的boolean是false,右侧就不再执行。 -
||(短路或)
连接左右两个boolean结果,最终计算出来的也是一个boolean结果。
如果两个boolean都是false,最终的计算结果是false
只要有一个boolean是true,最终的计算结果是true
如果左侧boolean为true,右侧的boolean就不再执行 。
4.算术运算符
算术运算符包括:+,-,*,/,%
在算术运算中,会自动的将数据类型按照计算顺序依次转换成高类型再计算
int a = 10 ;
int b = 20 ;
double c = 1.0 ;
此时计算a+b+c会先计算a+b,此时是int和int类型相加,没有转换。 之后再a+b的和与d相加,此时a+b的和(int)会转换成double再运算。
此外需要注意/,%
11 除以 3 结果是 商3… 余2
11/3 最终获得的是商值3
11%3 最终获得的是余数值2
只有两个除法算式都是整形时,符合上述特点。
如果有一个计算式是浮点型,最终的除法结果也是一个浮点
如果需要5除以2最终的结果是2.5的话,要求必须是5.0或2.0才可以
5.0 / 2 ==> 2.5
5 / 2.0 ==> 2.5