一、逻辑运算符
&单与、&&双与、|单或、|双或 ,&&又称短路与,||又称短路或
1.&&和&:
相同点:
左右表达式有false,则整体false
不同点:
&&具有短路功能,当&&左边的表达式为false时,右边的表达式不会计算
&没有短路功能,不管左边时true还是false,右边的表达式都会参与计算
2.||和|:
相同点:
左右表达式有true,则整体true
不同点:
||具有短路功能,当||左边表达式为true时看,右边的表达式不会计算
|没有短路功能,不管左边时true还是false,右边的表达式都会参与计算
3.举例:
1.int a=5,b=6; a>b && a++>b;整体为false,且a为5
a>b && a++>b;整体为false,且a为6
2.int a=5,b=6; a<b || a++>b;整体为true,且a为5
a>b || a++==b;整体为true,且a为6
二、条件运算符,三目运算符:
1.格式
语句1 关系运算符 语句2?表达式1:表达式2
2.举例
a>b?"a比b大":"a比b小"
如果a>b为true,则执行表达式1,否则表达式2
3.可嵌套,为了清晰,用括号分割
a>b?( (a>c?"a最大":"a不是最大"):(a比b小) );
三、运算符优先级如下:
1..[] ()
2.++ -- ~ !
3.* / %
4.+ -
5.<< >> >>>
6.< > <= >=
7.== !=
8.&
9.^
10.|
11.&&
12.||
13.?:
14.= *= /= %= += -= <<= >>= >>>= &= ^= |=