Suositeltava, 2022

Toimituksen Valinta

Ero & & & &

"&" Ja "&&" molemmat ovat operaattoreita, joita käytetään ehdollisten lausuntojen arvioimiseen. & Operaattori on sekä looginen että bittinen operaattori. & & -Operaattori on puhtaasti looginen toimija. Tärkein ero & & & & -operaattorin välillä on, että & operaattori arvioi lausekkeen molemmat puolet, kun & & -operaattori arvioi vain lausekkeen vasemman puolen saadakseen lopputuloksen. Ymmärrämme muut ja & & & & n väliset erot vertailukaavion avulla.

Vertailukaavio

Vertailun perusteet&&&
operaattoriSe on "bittinen operaattori".Se on "looginen operaattori".
arviointiSe arvioi sekä vasemman että oikean puolen ilmaisua.Se arvioi vain lausekkeen vasenta puolta.
ToimiiSe toimii "Boolen datatyypillä" sekä toimii "bitteillä".Se toimii vain "Boolen datatyypillä".
KäyttääKäytä loogisen tilan tarkistamiseen ja myös peittämään tiettyjä bittejä, kuten pariteettibittejä.Käytetään vain loogisen tilan tarkistamiseen.

Määritelmä & (Bitwise AND)

Tätä "&" -käyttäjää käytetään sekä logiikkana (&) operaattorina että bittisoittimena. Se toimii sekä boolean että binääritiedoissa. Kun & operaattoria käytetään sitten loogisena ja operaattorina, se johtaa "todelliseen", jos molemmat arvioinnin puolen puolet ovat totta, muuten se palauttaa "väärän". Sen avulla kääntäjä voi arvioida sekä lausekkeen sivua. Toisin sanoen, vaikka lausekkeen vasemmalla puolella olisi väärä, se arvioi lausekkeen oikean puolen.

Saamme ymmärtää tämän esimerkin avulla.

 int a = 4, b = 5; system.out.println ((a == 6) & (b ++ == 6)); system.out.println ("b =" + b); // tuotos väärä b = 5 

Tässä arvioitaessa lausekkeen vasenta puolta (== 6), tuloksena on väärä, & operaattori arvioi sitten lausekkeen oikean puolen (b ++ == 6), b-askelin arvon.

Kun "&" käytetään "bittisesti operaattorina", se ensin muuntaa molemmat operandit binäärimuodoksi ja käyttää sitten sitä käyttäen & operaattori, bittinen-bittinen. Toiminnan jälkeen saatu tulos on binäärimuodossa, joka muunnetaan sitten desimaaliksi. Mikä tahansa bitti, joka on 0 kummassakin operandista, johtaa 0: een. Jos molemmat operandien bitit ovat 1, niin tuloksena oleva bitti on 1. Bitwise & operaattoria ohjaa sama totuustaulukko kuin sen looginen ja operaattori.

Katsotaanpa & operaattorin bittinen toiminta.

 int a; a = 3 & 4; // 011 & 100 = 000 system.out.println ("a =" + a); // lähtö a = 0 

Tällöin desimaaliarvo 3 ja 4 muunnetaan aluksi binäärimuodoksi, ja sitten & bitwise-operaattori suorittaa ne & bittiä bittisesti. Saatu tulos on binäärimuodossa, joka muunnetaan sitten desimaalimuotoon.

Määritelmä && (oikosulku ja)

Tämä & & -operaattori toimii täysin loogisena operaattorina. Se toimii vain boolean tietotyypillä. Sitä kutsutaan myös oikosulkuoperaattoriksi. Koska se tarkistaa vain lausekkeen vasemman puolen. Jos lausekkeen vasen puoli johtaa väärään, se ei häiritse ilmaisun oikeanpuoleisen arvioinnin arviointia.

Saamme ymmärtää & & -operaattorin toiminnan esimerkin avulla.

 int a = 4, b = 5; system.out.println ((= = 6) && (b ++ == 6)); system.out.println ("b =" + b); // tuotos väärä b = 4 

Tässä, kun ehto (a == 6) on väärä, & & -operaattori ei arvioi lauseketta (b ++ == 6), joten b: n arvo ei kasvaa.

Keskeiset erot & & & &

  1. & Operaattori on sekä looginen että bittinen operaattori, koska se toimii sekä booleilla että binääridatalla, kun taas && -käyttäjä on vain looginen operaattori, koska se toimii vain boolen tietotyypillä.
  2. & Operaattori arvioi lausekkeen molemmat puolet saadakseen lopullisen tuloksen, kun & & -operaattori arvioi vain lausekkeen vasemman puolen ja jos se osoittautuu vääräksi, se ei edes arvioi lausekkeen oikeaa puolta.

Huomautus:

Kun arvioidaan boolean tietotyyppiä, molemmat operaattorit tulevat “true” vain, jos molemmat operandit ovat totta, muuten se palauttaa ”false”.

johtopäätös:

& & & & -Operaattoria käytetään molempien arvojen arvioimiseen, kun taas & operaattoria käytetään myös bittisesti. Kun vaaditaan arvioimaan sekä ilmaisun puolta että operaattoria käytetään, voimme käyttää && operaattoria.

Top