操作符
操作符是对一到三个操作数进行操作,并返回操作结果的特殊符号。
Java中操作符运算优先顺序
从上到下,同一行操作符从左到右(只有赋值操作符是从右到左)
操作符分类
简单赋值操作符(Simple Assignment Operator)
= 简单赋值操作
算数操作符(Arithmetic Operator)
+ 相加操作,也用于连接字符串
- 减法操作
* 乘法操作
/ 除法操作
% 求余数操作
一元操作符(Unary Operator)
+ 表示正数(一般省略)
- 表示负数
++ 增加1
-- 减少1
! 逻辑求反操作
相等与关系操作符(Equality and Relational Operator)
== 相等
!= 不相等
> 大于
>= 大于等于
< 小于
<= 小于等于
条件操作符(Conditional Operator)
&& 条件与
|| 条件或
?: 三元操作符,等价于if-then-else语句
类型比较操作符(Type Comparison Operator)
instanceof 用对象和指定类型相比较
位与位移操作符(Bitwise and Bit Shit Operator)
~ 一元位补码
<< 有符号向左位移
>> 有符号向右位移
>>> 无符号向右位移
& 位与
^ 位或,不包含
| 位或,包含
操作符是对一到三个操作数进行操作,并返回操作结果的特殊符号。
Java中操作符运算优先顺序
从上到下,同一行操作符从左到右(只有赋值操作符是从右到左)
操作符 | 优先顺序 |
postfix(后缀) | expr++, expr-- |
unary(一元操作符) | ++expr, --expr, +expr, -expr, ~, ! |
multiplicative(乘法) | *, /, % |
additive(加法) | +, - |
shift(位移操作) | <<, >>, >>> |
ralational(关系操作) | <, >, <=, >=, instanceof |
equality(相等关系) | ==, != |
bitwise AND(按位与) | & |
bitwise exclusive OR (按位或,排除) | ^ |
bitwise inclusive OR (按位或,包含) | | |
logical AND (逻辑与) | && |
logical OR (逻辑或) | || |
ternary (三元操作符) | ?: |
assignment(赋值操作符) | =, +=, -=, *=, /=, %=, &=, ^=, |=, <<=, >>=, >>>= |
操作符分类
简单赋值操作符(Simple Assignment Operator)
= 简单赋值操作
算数操作符(Arithmetic Operator)
+ 相加操作,也用于连接字符串
- 减法操作
* 乘法操作
/ 除法操作
% 求余数操作
一元操作符(Unary Operator)
+ 表示正数(一般省略)
- 表示负数
++ 增加1
-- 减少1
! 逻辑求反操作
相等与关系操作符(Equality and Relational Operator)
== 相等
!= 不相等
> 大于
>= 大于等于
< 小于
<= 小于等于
条件操作符(Conditional Operator)
&& 条件与
|| 条件或
?: 三元操作符,等价于if-then-else语句
类型比较操作符(Type Comparison Operator)
instanceof 用对象和指定类型相比较
位与位移操作符(Bitwise and Bit Shit Operator)
~ 一元位补码
<< 有符号向左位移
>> 有符号向右位移
>>> 无符号向右位移
& 位与
^ 位或,不包含
| 位或,包含
Ref: http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html