目录
算术运算符
-
正号 +
-
负号 -
-
加 +
-
减 -
-
乘 *
-
除 / 两个整数运算,结果也是整数(小数部分去掉);
计算数字其中一个是小数,结果可以是小数
-
取模(取余) % 本质:公式 a%b = a - a / b * b;
-
自增 ++ i++等价于i=i+1
++i先自增后赋值 eg:int j = 8; int k = ++j; k=9,j=9
int i=1; i=i ++; i=2(i=i+1;temp=i;i=temp)
i++先赋值后自增 eg:int j = 8; int k = j++; k=8,j=9
int i=1; i=i ++; i=1(temp=i;i=i+1;i=temp)
-
自减 -- i--等价于i=i-1(规则同自增)
-
字符串相加 +
注:注释快捷键ctrl+/,再次输入取消注释
关系运算符
结果为ture或false
-
相等于 ==
-
不等于 !=
-
小于 <
-
大于 >
-
小于等于 <=
-
大于等于 >=
-
是否是类对象 instanceof
逻辑运算符
-
短路与 && 同时为真则为真(通常使用)
第一个条件为假,后面条件不再执行,效率高
-
短路或 || 有一个为真则为真(通常使用)
第一个条件为真,后面条件不再执行,效率高
-
取反 (非) ! 是真结果为假,是假结果为真
-
逻辑与 & 同时为真则为真
第一个条件为假,后面条件仍然执行
-
逻辑或 | 有一个为真则为真
第一个条件为真,后面条件仍然执行,效率低
-
逻辑异或 ^ 两个不同则为真
赋值运算符
1.赋值运算符
-
+= 等价于a = a + b
-
-= 等价于a = a - b
-
*= 等价于a = a * b
-
/= 等价于a = a / b
-
%= 等价于a = a % b
2.特点
运算顺序从右到左
赋值运算符的左边只能是变量,右边可以是变量、表达式、常量值
复合赋值运算符会进行类型转换
三元运算符
条件表达式 ? 表达式1:表达式2;
条件表达式结果为ture,运算后的结果是表达式1;
条件表达式结果为false,运算后的结果是表达式2。
表达式1和表达式2的值要为可以赋给接收变量的类型(或可自动转换);
三元运算符本质是if--else语句。
运算符优先级
只有单目运算、赋值运算是从右向左运算的
运算符优先级顺序(从优先级高到优先级低):
-
(),{}等
-
单目运算符
-
算术运算符
-
位移运算符
-
比较运算符
-
逻辑运算符
-
三元运算符
-
赋值运算符