一、 算术运算符 +,-,*,/,%
+: 将两个数相加
-:将两个数减
/:将两个数相除,除数不能为0
%:取余计算,对除法操作结果取余数,两个数据不能为浮点型,如果需要对浮点型数据进行取余操作,可以对原数据进行强制类型转换,将两个double类型的数据(在运算过程中)转换成int类型。
注: 强制类型转换写法:(int)a
=> (目标类型)变量
2、 赋值运算符:=,+=,-=,/=,*=……
例如:
a=a+b;
代表将b+c的运算结果赋值给a。’=’会将等号的右值赋值给左值。
a-=b;
等价于a=a-b 代表将a-b的运算结果赋值给a。
赋值运算符的优先级非常的低。所以当有赋值运算符存在的时候,都是先计算右值,再赋值给左值的。
3、 比较运算符:>,<,>=,<=,==,!=
正如之前所说,每一个表达式,都会产生一个计算结果。如果表达式成立的计算结果为1(也就是真),不成立的计算结果为0(也就是假)。
4、 单目运算符(自增运算符)+ +,- -
如果对int a=0进行自增操作,有收下两种方式
a++ ==> a+=1 ==> a=a+1
后加加:先赋值,后运算
(这里所谓的赋值对象,为a++这个表达式本身,先将a=0的值赋值给a++,然后再执行自增操作,得到a=1.)
++a == > a+=1 ==> a=a+1
前加加:先运算,后赋值
(先将a=0进行自增运算,再将得到的a=1的结果赋值给++a表达式本身)
**注意:**无论是使用a++还是++a,a的值都会自增1。
5、 逻辑运算符:&&,||,!(与,或,非),
对于逻辑与(&&),当参数两者都是真的时候,表达式结果为真;其它情况为假。
对于逻辑或(||),当参数两者任意一个为真的时候,表达式结果为真,其它情况为假,(有一真,则为真)。
对于逻辑非(!),真则为假,假则为真。
6、 三目运算符
用来计算两个数据之中较大/较小的数量哪一个。即,计算完成后,整个表达式的计算结果应该是进行比较的两个数其中之一。
例如:int a=2,b=3; int bigger=0; bigger=(a>b)?a:b;
括号内结果为逻辑真假,?可以理解成是否成立。如果括号逻辑为真,则整个表达式取’:’的左值,反之则取右值。
7、 位运算符:位运算符都是针对二进制数进行位运算
- 按位与-&:都为1,则为1,其它情况为0
- 按位或-|:有1为1,全0为0。
- 按位取反-~:1为0,0为1;
- 按位异或-^:相同为0,不同为1.
- 左移<<、 右移 >>
a&=~(1<<n),将a从右往左数,第n+1盏灯关闭。
a|=(1<<n),将a从右往左数,第n+1盏灯打开。