WebHU - Programozási kérdések és válaszok

Mi a különbség az & és az && között? [másolat]

Lehetséges ismétlődés:
& vs && és | vs ||

Mi a különbség a & és a && között?

Ugyanazt a kimenetet kapom a & és a && számára is.

Ex:

  1. &&:

    if (true && true){
        System.out.println("------if------");
    } else {
        System.out.println("------else------");
    }
    
  2. &:

    if (true & true){
        System.out.println("------if------");
    } else {
        System.out.println("------else------");
    }
    

Kimenet:

  1. ------if------
  2. ------if------

Használhatjuk felcserélhetően a & és && operátorokat a kódunkban?

13.10.2011


Válaszok:


1

&& rövidre zárja a kiértékelést, míg a & mindig mindkét operandust kiértékeli.

Ez egy duplikált kérdés. Megpróbálom előásni neked a linket...

13.10.2011

2

Az & mind a bal, mind a jobb oldali operandus kiértékelését kényszeríti, míg a && a rövidzár operátor, és nyilvánvaló esetekben nem ellenőrzi a jobb oldali operandust.

// this will evaluate both method calls even if the result
// of checkSomething() is false
boolean result = checkSomething() & checkSomethingExpensive()

// this will skip evaluation of checkSomethingExpensive() if the result of
// checkSomething() is false
boolean result = checkSomething() && checkSomethingExpensive()
13.10.2011

3
  • & - bitenként ÉS
  • && - logikai ÉS

Mindkét esetben igazad van, mert logikai ÉS esetén az ok nyilvánvaló, a bitenkénti ÉS esetén pedig az igaz 1-ként értelmeződik, tehát az 1 & 1 alsays 1 értéket ad vissza, ami elfordul ki a logikai true

13.10.2011
  • & jól működik a logikai értékekhez is. Az operandusok nem egész számként értelmezhetők. 13.10.2011
  • +1, mert ez az egyetlen igazi helyes válasz itt. Az & és az && valójában két különböző operátor. Ha jól emlékszem, az, hogy az egyik full logikai eval-t használ, a másik pedig nem, csak mellékhatás. használhatod a &=-t, de szerintem nem használhatod a &=-t java-ban. 13.10.2011

  • 4

    logikai ÉS &&

    Java operátorok

    A bitenkénti & operátor bitenkénti ÉS műveletet hajt végre.

    Java operátorok2

    13.10.2011

    5

    Ökölszabály: használja a &&-t, amikor logikai értékekkel, feltételekkel, if-ekkel stb. foglalkozik. I.e. az idő nagy részében. Használja a &-t azokban a ritka esetekben, amikor bitműveleteket kell végrehajtania.

    13.10.2011

    6
    • &: művelet, logikai igaz & igaz == igaz, egész szám 1001b és 1110b == 1000b
    • &&: összehasonlítás, logikai igaz & true == igaz, egész szám fordítói hiba
    13.10.2011

    7

    Ez azért van, mert a következőket értékelik:

    Meg fogom írni angol szemantikával, hogy megértsd.

    1. kimenethez: Logikai ÉS &&

    ha igaz ÉS igaz IGAZ.

    A 2. kimenethez: Bitenként ÉS &

    • Legyen x = igaz (más szóval a 1 bit)
    • x = x ÉS igaz (más szóval x = 1 & 1) A bit ÉS-re van írva
    • if (x IGAZ), akkor nyomtassa ki az if utasítást.
    13.10.2011

    8

    Az && egy összehasonlítás, míg az & egy művelet!

    13.10.2011
    Új anyagok

    A rádiógomb ellenőrzött eseményének használata a jQueryben
    Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

    Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
    Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

    Miért érdemes elkezdeni a kódolást 2023-ban?
    01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

    🎙 Random Noise #2  – Örökbefogadás és hit
    az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

    A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
    A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

    5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
    Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

    Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
    A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..