1、加减乘除
+ 加
- 减
* 乘
/ 除
2、关系运算符
>= 大于或等于
<= 小于或等于
== 是否等于 当判断一个条件是否等于另一个条件的时候,要用==而不是=。=号是赋值,==才是判断
!= 不等于
自增自减运算符
++ 自增1
-- 自减一
例如:
int a=1;
a++;
这个时候a会变成2
3、逻辑运算符
(1) && 逻辑与
条件1&&条件2
条件1和条件2都为真结果为真
一个为假都为假
(2)|| 逻辑或
条件1||条件2
条件1或条件2
一个为真则为真
关于逻辑运算符中短路的问题
例:(a>=0)&&(a++)
如果第一个条件a>=0为假,表达式一定为假,所以后面的a++相当于被短路了,并不会执行
同理:(a>=0)||(a++)
如果a>=0为真,那么表达式一定为真,短路后面(a++)
!逻辑非运算符
一个条件如果为真
!那个条件,则该表达式为假
同理,一个表达式为假,!那个表达式,结果为真
条件运算符
a?b:c
这个表达式意思是a为真则表达式为b,a为假则c
例子:
int a=3,b=4,c=5;
int c=((a>0)?b:c) //因为a大于0是真,所以表达式值为b也就是4
int d=((a<0)?b:c)//因为a小于0是假,所以表达式的值为c也就是5
逗号运算符 ,
a,c,v,d,f,g,d,e,e,r,t,y,d,q
一大串逗号运算符,最后运算完每一项后,输出结果是最后一项,也就是q
按位运算(不是很常用)
&
按位与
如果两个相应的二进制位都为1,则该位的结果值为1,否则为0
|
按位或
两个相应的二进制位中只要有一个为1,该位的结果值为1
^
按位异或
若参加运算的两个二进制位值相同则为0,否则为1
~
取反
~用来对一个二进制数按位取反,把0变1,把1编程0
<<
左移
用来将一个数的各二进制位全部左移N位,右补0
有移
>>
将一个数的二进制右移需要移动的位数,空出来的左边则需要补0
最后要注意运算符的优先级,这个非常重要
附上表