java 语言支持的运算符:
算数运算符
+ | 加 | 1.加号2.正号3.字符串连接符 |
---|---|---|
- | 减 | 1.减号2.负号 |
******* | 乘 | 乘号 |
/ | 除 | 除号 |
% | 取模 | 取模 获取余数 通常用来判断是否为整除 余数为0则整除 |
++ | 前加加,后加加 | 1.++a(先+1,在运算) 2.a++(先运算,在+1) |
– | 前减减,后减减 | 1.–a(先-1,在运算) 2.a–(先运算,在-1) |
赋值运算符
- 如图所示
+= | 相当于数学中的加号 |
---|---|
-= | 相当于数学中的减号 |
*= | 相当于数学中的乘号 |
/= | 相当于数学中的除号 |
= | 赋值 |
比较运算符
- 比较运算符 永远都是 布尔型
- 如图所示:
> | 大于 |
---|---|
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
== | 等于 |
!= | 不等于 |
逻辑运算符
-
逻辑运算符 永远都是 布尔型
-
如图所示
&&{(与,and)+短路} | 全部为真是true,只要遇到假则后边的全部跳过,结果直接为false |
---|---|
||{(或,or)+短路} | 全部为假是false,只要遇到真则后边的全部跳过,结果直接为true |
!(非,取反) | 遇假变真,遇真变假 |
位运算符
. 所有的位运算符 都是基于二进制的基础
注意:任何正整数 & n 结果肯定是 (0到n)
& | 上下都为1 结果才为1 |
---|---|
| | 上下有1变1 |
^ | 相同为0 不同为1 |
~ | 0变1 1变0 |
>> | 右移1位 |
<< | 左移1位 |
<<< | 无符号左移 |
/*
byte A = 0011 1100
byte B = 0000 1101
----------------------------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~B = 1111 0010
----------------------------------
A<< = 0111 1000
B>> = 0000 0110
B>>> = 1000 0110
*/
条件运算符(三目运算符 / 三元运算符)
? : |
---|
-
X?Y:Z;
X:布尔类型的表达式
Y:X表达式的结果为true
Z:X表达式的结果为false -
例如
//例子1.
int age = 19;
String result = age>=18?"成年了":"未成年";
System.out.println(result);
//例子2.
int m = 120;
int n = 90;
int maxNum = m>n?m:n;
System.out.println("maxNum = "+ maxNum);