站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        java中的&和&&有什么區(qū)別

        java中的&和&&的區(qū)別:1、&&運算符在運算時當?shù)谝粋€表達式的值為false時,就不會再計算第二個表達式;而&運算符則不管第一個表達式的值是否為真都會執(zhí)行兩個表達式。2、&運算符可以用作位運算符,而&&運算符不可以。

        java中的&和&&有什么區(qū)別

        本教程操作環(huán)境:windows7系統(tǒng)、java8版、DELL G3電腦。

        在Java中&&和&都是表示"與"的邏輯運算符,也就是and的意思。它們都是當兩邊的表達式都為true的時候,整個運算結(jié)果才為true,否則為false。接下來在文章中將為大家具體介紹這兩者之間的區(qū)別。

        &和&&的區(qū)別

        &和&&都是邏輯運算符,但&&又叫短路運算符。因為當?shù)谝粋€表達式的值為false的時候,則不會再計算第二個表達式;

        而&則不管第一個表達式是否為真都會執(zhí)行兩個表達式。另外&還可以用作位運算符,當&兩邊的表達式不是Boolean類型的時候,&表示按位操作。

        && 操作

        int i = 0;         if(i == 3  && ++i > 0 )  {  } System.out.println("i = " + i);
        登錄后復(fù)制

        結(jié)果是:

        i = 0
        登錄后復(fù)制

        原因:第二個表達式?jīng)]有執(zhí)行

        & 操作

         int i = 0;          if(i == 3  & ++i > 0 )   {    }   System.out.println("i = " + i);
        登錄后復(fù)制

        結(jié)果是:

        i = 1
        登錄后復(fù)制

        第二個表達式執(zhí)行了

        擴展知識:邏輯運算符

        邏輯運算符把各個運算的關(guān)系表達式連接起來組成一個復(fù)雜的邏輯表達式,以判斷程序中的表達式是否成立,判斷的結(jié)果是 true 或 false。

        邏輯運算符是對布爾型變量進行運算,其結(jié)果也是布爾型,具體如表 1 所示。

        表 1 邏輯運算符的用法、含義及實例
        運算符 用法 含義 說明 實例 結(jié)果
        && a&&b 短路與 ab 全為 true 時,計算結(jié)果為 true,否則為 false。 2>1&&3<4 true
        || a||b 短路或 ab 全為 false 時,計算結(jié)果為 false,否則為 true。 2<1||3>4 false
        ! !a 邏輯非 a 為 true 時,值為 false,a 為 false 時,值為 true !(2>4) true
        | a|b 邏輯或 ab 全為 false 時,計算結(jié)果為 false,否則為 true 1>2|3>5 false
        & a&b 邏輯與 ab 全為 true 時,計算結(jié)果為 true,否則為 false 1<2&3<5 true
        • || 與 | 區(qū)別:如果 a 為 true,則不計算 b(因為不論 b 為何值,結(jié)果都為 true)

        注意:短路與(&&)和短路或(||)能夠采用最優(yōu)化的計算方式,從而提高效率。在實際編程時,應(yīng)該優(yōu)先考慮使用短路與和短路或。

        結(jié)果為 boolean 型的變量或表達式可以通過邏輯運算符結(jié)合成為邏輯表達式。邏輯運算符 &&、|| 和 !按表 2 進行邏輯運算。

        表 2 用邏輯運算符進行邏輯運算
        a b a&&b a||b !a
        true true true true false
        false true false true true
        true false false true false
        false false false false true

        邏輯運算符的優(yōu)先級為:!運算級別最高,&& 運算高于 || 運算。!運算符的優(yōu)先級高于算術(shù)運算符,而 && 和 || 運算則低于關(guān)系運算符。結(jié)合方向是:邏輯非(單目運算符)具有右結(jié)合性,邏輯與和邏輯或(雙目運算符)具有左結(jié)合性。

        下面是一些使用邏輯運算符的示例。

        x>0 && x<=100    // 第一行語句 y%4==0 || y%3==0    // 第二行語句 !(x>y)    // 第三行語句
        登錄后復(fù)制

        其中,第一行語句用于判斷 x 的值是否大于 0 且小于或等于 100,只有兩個條件同時成立結(jié)果才為真(true)。第二行語句用于判斷 y 的值是否能被 4 或者 3 整除,只要有一個條件成立,結(jié)果就為真(true)。第三行語句先比較 x 和 y,再將比較結(jié)果取反,即如果 x 大于 y 成立,則結(jié)果為假(false),否則為真(true)。

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 国产精品一区二区不卡| 国产微拍精品一区二区| 国产精品哟女在线观看| 97久久超碰国产精品2021| 亚洲日韩精品无码一区二区三区| 国产精品日韩欧美在线第3页| 精品国内片67194| 1024国产欧美日韩精品| 亚洲国产精品无码专区影院| 久久久精品无码专区不卡| 国产精品黄网站| 国产成人精品无码免费看| 色一乱一伦一图一区二区精品 | 亚洲av午夜国产精品无码中文字| 四虎国产精品永久地址99| 国产91大片精品一区在线观看| 久久久久人妻一区精品色| 呦交小u女国产精品视频| 日本精品久久久久久久久免费| 国精品无码A区一区二区| 国产精品一香蕉国产线看观看| 97精品人妻一区二区三区香蕉| 亚洲成人精品久久| 66精品综合久久久久久久| 四虎影视884a精品国产四虎| 久久精品一区二区三区不卡| 国产一区二区精品久久| 日韩精品国产自在久久现线拍| 奇米精品一区二区三区在线观看| 国产精品爽黄69天堂a| 久久精品国产亚洲一区二区| 99久久国产主播综合精品| 国产精品二区观看| 精品久久久久久无码免费| 日韩精品欧美| 亚洲欧美精品SUV| 国语精品一区二区三区| 国产精品你懂得| 国产精品1024在线永久免费| 精品国产福利盛宴在线观看| 亚洲国产小视频精品久久久三级|