算数运算符
public class Operator {
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println(a + b);
System.out.println(b - a);
System.out.println(a * b);
System.out.println(b / a);
System.out.println(a++);
System.out.println(b--);
a = 1;
b = 2;
System.out.println(++a);
System.out.println(--b);
a = 1;
b = 2;
System.out.println(b % a);
}
}
关系运算符
public class Operator2 {
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println(a == b);
System.out.println(a != b);
System.out.println(a > b);
System.out.println(a < b);
System.out.println(a >= b);
System.out.println(a <= b);
}
}
位运算
public class Operator3 {
public static void main(String[] args) {
int a = 12;
int b = 20;
System.out.println(a & b);
System.out.println(a | b);
System.out.println(a ^ b);
System.out.println(~a);
System.out.println(a >> 2);
System.out.println(a << 2);
System.out.println(a >>> 2);
}
}
逻辑运算符
public class Operator4 {
public static void main(String[] args) {
boolean a = true;
boolean b = false;
System.out.println(a && b);
System.out.println(a || b);
System.out.println(!a);
}
}
赋值运算符
操作符 |
描述 |
例子 |
= |
简单的赋值运算符,将右操作数的值赋给左侧操作数 |
C = A + B将把A + B得到的值赋给C |
+= |
加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 |
C + = A等价于C = C + A |
-= |
减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数 |
C - = A等价于C = C - A |
*= |
乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数 |
C * = A等价于C = C * A |
/ = |
除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数 |
C / = A,C 与 A 同类型时等价于 C = C / A |
(%)= |
取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数 |
C%= A等价于C = C%A |
<<= |
左移位赋值运算符 |
C << = 2等价于C = C << 2 |
>>= |
右移位赋值运算符 |
C >> = 2等价于C = C >> 2 |
&= |
按位与赋值运算符 |
C&= 2等价于C = C&2 |
^= |
按位异或赋值操作符 |
C ^ = 2等价于C = C ^ 2 |
|= |
按位或赋值操作符 |
C |= 2等价于C = C | 2 |
三元运算符
public class Operator5 {
public static void main(String[] args) {
boolean a = false;
System.out.println(a ? 'a' : 'b');
}
}
instanceof 运算符
检查该对象是否是一个特定类型
运算符优先级
类别 |
操作符 |
关联性 |
后缀 |
() [] . (点操作符) |
左到右 |
一元 |
expr++ expr– |
从左到右 |
一元 |
++expr --expr + - ~ ! |
从右到左 |
乘性 |
* /% |
左到右 |
加性 |
+ - |
左到右 |
移位 |
>> >>> << |
左到右 |
关系 |
> >= < <= |
左到右 |
相等 |
== != |
左到右 |
按位与 |
& |
左到右 |
按位异或 |
^ |
左到右 |
按位或 |
| |
左到右 |
逻辑与 |
&& |
左到右 |
逻辑或 |
| | |
左到右 |
条件 |
?: |
从右到左 |
赋值 |
= + = - = * = / =%= >> = << =&= ^ = | = |
从右到左 |
逗号 |
, |
左到右 |