算术运算符:
一元运算符 - 取反 ++自加 --自减
二元运算符 + - * / %
算术赋值运算符 += -= *= /= %= 如:a += b 等同于 a = a + b数组
关系运算符:返回布尔类型
等于 == 不等于 !=
大于 > 小于 <
小于等于 <= 大于等于 >=
注意:只有== != 能够用于引用类型比较 实际比较的是内存地址是否相同对象
逻辑运算符:返回布尔类型
逻辑非 ! 逻辑与 & 逻辑或 |
短路与 && 短路或 ||
两者的区别是:逻辑与 和 逻辑或 两边都会判断
短路与 只有两边都为true时才为true 那么 左边为false时,右边再也不判断
短路或 只有两边都为false时才为false 那么 左边为true时,右边再也不判断内存
位运算符:
位反 ~ 0和1取反 注意第一位为符号位
位与 & 只有都为1时才为1 其余都为0
位或 | 只有都为0时才为0 其余都为1
位异或 ^ 相同时为0 不相同时为1
右位移 左位移 要注意符号位class
其余运算符:
三元运算符 ?: 如 x ? y : z 若是x成立,执行y 不然执行z
小括号 () 改变优先级
中括号 [ ] 数组下标
引用号 . 对象调用变量或方法等
赋值号 = 赋值使用变量
运算符优先级:
算术运算符 > 位运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符引用