什么是运算符?
运算符是一种符号,用来表示数据之间的运算。如:+ 、- 、* 、\、=等
运算符分类:
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
运算符的优先级和结合性:
如果是一连串的运算,就需要考虑
a = 5+3*2/(1+6)-1;
算术运算符
如a=3;b=2; | ||||
运算符 | 运算 | 范例 | 结果 | 说明 |
+ | 正号 | a=+b; | a=2; | |
- | 负号 | a=-b; | a=-2; | |
+ | 加 | a= a+b; | a=5; | 把a和b相加的值给a |
- | 减 | a=a-b; | a=1; | |
* | 乘 | a=a*b; | a=6; | |
/ | 除 | a=a/b; | a=1; | 由于是整形,所以a/b的值为整形1 |
% | 取模 | a=a%b; | a=1; | 把a除b的余数赋值给a |
++ | 自增(前) | b=++a; | b=4;a=4; | 先让a的值加1,再把a的值赋值给b |
++ | 自增(后) | b=a++; | b=3;a=4; | 先把a的值赋值给b,再让a的值加1 |
- - | 自减(前) | b=- -a; | b=2;a=2; | 先让a的值-1,再把a的值赋值给b |
- - | 自减(后) | b=a- -; | b=3;a=2; | 先把a的值赋给b,再让a减1 |
+ | 字符串相加 | “Hello ”+”World” | “Hello World” |
赋值运算符
运算符 | 运算赋值 | 范例 | 结果 | 说明 |
= | 赋值 | a=3;b=2; | a=3;b=2; | |
+= | 加等于 | a=3;b=2;a+=b | a=5;b=2; | a=a+b; |
-= | 减等于 | a=3;b=2;a-=b; | a=1;b=2; | a=a-b; |
*= | 乘等于 | a=3;b=2;a*=b; | a=6;b=2; | a=a*b; |
/= | 除等于 | a=3;b=2;a/=b; | a=1;b=2; | a=a/b; |
%= | 模等于 | a=3;b=2;a%=b; | a=1;b=2; | a=a%b; |
比较运算符
运算符 | 含义 | 示例 |
== | 等于 | a==b |
!= | 不等于 | a!=b |
> | 大于 | a>b |
< | 小于 | a<b |
>= | 大于或等于 | a>=b |
<= | 小于或等于 | a<=b |
instanceof | 检查是否是该类的一个对象 |
“aa”instanceof String
|
比较运算符的结果是boolean类型的,也就是值只有两种true/false;
注意:比较运算符中的”==“不能误写成”=“
逻辑运算符
运算符 | 含义 | 示例 |
& | 逻辑与 | A & B |
| | 逻辑或 | A | B |
^ | 逻辑异或 | A ^ B |
! | 逻辑反 | ! A |
|| | 短路或 | A || B |
&& | 短路与 | A && B |
逻辑运算符中的&和&&的区别:
- &无论任何情况,&两边的表达式都要运算
- &&如果左边式false,则不会计算右边的表达式
|和||的区别:
- |无论任何情况,|两边的表达式都要运算
- ||如果左边表达式的值为true,则不会计算右边表达式的值
位运算符
运算符 | 含义 | 示例 |
~ | 按位非(NOT)/取反 | b = ~a |
& | 按位与(AND) | c = a & b |
| | 按位或(OR) | c = a | b |
^ | 按位异或(XOR) | c = a ^ b |
>> | 右移 | b = a >> 2 |
>>> | 无符号右移,左边空出的位以0填充 | b = a >>> 2 |
<< | 左移 | b = a << 1
|
<h5三木运算符(?:)
条件?表达式1:表达式2;
如果条件的值为true则这个表达式的值为表达式1的值,否则为表达式2的值
本文转自安卓杂谈网 http://www.yee4.com/blog/99.html