什么是运算符?
运算符是一种符号,用来表示数据之间的运算。如:+ 、- 、* 、\、=等
运算符分类:
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
运算符的优先级和结合性:
如果是一连串的运算,就需要考虑
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