① 算术运算:+加 -减 *乘 /除 %取余(模数运算)
② 比较(Comparison)运算:>大于 <小于 >=大于等于 <=小于等于 ==等于 !=不等于
② 条件(Conditional)运算:条件式?成立返回值:失败返回值(三元运算符)
③ 逻辑(Logical)运算:&&(短路与AND)、||(短路或OR)、!(NOT),即且、或、非。
短路与/与的区别是,短路性质:当左边能判断结果,则不计算右边。
④ 位运算(Bitwise):位对应运算即逐位运算
&(AND):都为1则1,反之为0。可以用于取位操作,如AND 001取二进制的最末位判断奇偶性。
|(OR):有1则1。可以对特定位强行赋值,如OR 001把最末位变成1,若变成0再减1。
^(XOR):异或。相同为0,不同则为1。可用于加密,两次XOR运算为本身。
~(取反):包括符号位全部按位取反。数值变化:+1取负。
<< >>(左移右移):左移指定位数右边补零,右移指定位数左边补上原来的位。>>> 右移左边补零
1左移可以求2的平方。
⑤ 递增递减:++ -- 写在变量前,先运算再返回值;写在变量后,返回值再运算。
⑥ 指定运算:= 即赋值。也可以与其他运算符组合。
⑦检查类型:instanceof 运算符
如果运算符左侧变量所指的对象,是操作符右侧类或接口(class/interface)的一个对象,那么结果为真。
运算优先级