&& 和 &,||和|
【&& 與||】
條件a &&條件b:邏輯與運(yùn)算,兩者都為真,結(jié)果才為真
注意:&&采用的是短路運(yùn)算,如果條件a為假,那么條件b不判斷,直接判定結(jié)果為假。同理,||運(yùn)算中,如果一個(gè)條件為真,第二個(gè)條件不判斷,結(jié)果直接為真。
&、|:可以用作整數(shù)的位運(yùn)算,也可以用作邏輯與、邏輯或運(yùn)算,如果用作邏輯與、或運(yùn)算,和&&、||的不同點(diǎn)是,兩個(gè)條件都會(huì)判斷。
eg:
在上述這個(gè)例子中,a的值首先為2,此時(shí)a>2結(jié)果為假,a自增為3,邏輯與后面的條件不進(jìn)行判斷,也就是--b不會(huì)執(zhí)行,最終輸出a=3,b=1,c=3-1=2;
若將代碼中的&&改為&,首先a>2結(jié)果為假,a自增為3,接著進(jìn)行&后面的條件判斷,b的值減1為0,0<1為真,&兩邊整體判斷結(jié)果為假,最終輸出a=3,b=0,c=3-0=3
標(biāo)簽: