說說 和 的區別

2021-07-13 23:56:24 字數 506 閱讀 4738

&和&&都可以用作邏輯與的運算子,表示邏輯與(and),當運算子兩邊的表示式的結果都為true時,整個運算結果才為true,否則,只要有一方為false,則結果為false。

&&還具有短路的功能,即如果第乙個表示式為false,則不再計算第二個表示式。

例如,對於if(str!=null&&!str.equals(「」))表示式,當str為null時,後面的表示式不會執行,所以不會出現nullpointerexception如果將&&改為&,則會丟擲nullpointerexception異常。if(x==33 & ++y>0) y會增長,if(x==33 && ++y>0)不會增長。

&還可以用作位運算子,當&操作符兩邊的表示式不是boolean型別時,&表示按位與操作,我們通常使用0x0f來與乙個整數進行&運算,來獲取該整數的最低4個bit位。

例如,0x31 & 0x0f的結果為0x01。 

備註:這道題先說兩者的共同點,再說出&&和&的特殊之處,並列舉一些經典的例子來表明自己理解透徹深入、實際經驗豐富。 

說說 和 的區別

和 都可以用作邏輯與的運算子 表示邏輯與 and 當運算子兩邊的表示式的結果都為true時,整個運算結果才為true,否則,只要有一方為false,則結果為false。還具有短路的功能 即如果第乙個表示式為false,則不再計算第二個表示式 例如,對於if str null str.equals 表...

說說 和 的區別

和 都可以用作邏輯與的運算子,表示邏輯與 and 當運算子兩邊的表示式的結果都為true時,整個運算結果才為true,否則,只要有一方為false,則結果為false。還具有短路的功能,即如果第乙個表示式為false,則不再計算第二個表示式,例如,對於if str null str.equals 表...

說說 和 的區別

和 都可以用作邏輯與的運算子,表示邏輯與 and 當運算子兩邊的表示式的結果都為true 時,整個運算結果才為true,否則,只要有一方為false,則結果為false。還具有短路的功能,即如果第乙個表示式為false,則不再計算第二個表示式,例如,對於if str null str.equals ...