运算符:算术、赋值、比较、逻辑
取模时结果的正负与被模数相同
int a = 3;
b = a++;// 先运算再自增 b = 3; a = 4
b = ++a;// 先自增再运算 a = 4; b = 4;
+ 还可以用作字符串连接符 "learn "+" java " 字符串数据和任何数据使用+都是相连接,最终都会变成字符串
如:"5+5"+5+5 // 输出 5+555
"5+5"+(5+5) // 输出 5+510
+= -= *= /= %= 只做赋值运算,有自动转换步骤
如:short s = 4; s = s+5;//编译失败
s += 5;// 编译通过
== 比较运算符 其结果只有false和true
逻辑运算符连接boolean类型的表达式
^ : 异或 // 两边相同结果为false;两边不同结果为true;
&& 短路 当左边是false时,右边不运算// &:无论左边是true是false,右边都运算
|| 同上
位运算符(二进制的运算符):<< >>
<< x<<y = x*2(y)
如:3<<2=12; 0000-0000-0000-0000-0000-0000-0000-0011(3)
3左移2为:0000-0000-0000-0000-0000-0000-0000-1100(12)
>> x>>y = x/2(y) 移动后左边需要补的根据最高位确定,若最高位为0则用0补,若最高位为1则用1补
>>> 无符号右移 移动后无论最高位是0还是1,左边都补0
& 与 (且) 6 & 3 = 2 110 6
&011 3
=010 = 2
| 或
^ 异或 7 ^ 4 ^ 4 = 7 可用于加密
111.....11001 = -7 0000....000110 = 6 -6 = 6的二进制取反+1
- 000.....00001 1111....111001 6取反 (-7)
111.....11000 1111....111010 = -6
取反 000.....00111 = 7
传智播客学习java:运算符
最新推荐文章于 2022-05-25 16:30:18 发布