Tässä osiossa käsittelemme kahta tärkeintä operaattoria & ja && sisään Java ja katso myös tärkeimmät erot loogisten välillä ja bittikohtaiset operaattorit sekä sen käyttötarkoitukset.
& Operaattori
Yksi AND-operaattori ( & ) tunnetaan nimellä Bitittain JA operaattori. Se toimii yhdellä bitillä. Se vaatii kaksi operandia. Tuloksen bitti on 1, jos ja vain jos molemmat vastaavat bitit operandeissa ovat 1. Operaattorin tulos voi olla mikä tahansa luku. Esimerkiksi:
a = 01100010
b = 10111010
a&b = 00100010
&& Operaattori
Kaksois-AND-operaattorit (&&) tunnetaan nimellä looginen JA operaattorit. Sitä käytetään yleensä silmukoissa ja ehdollisissa lauseissa. Sitä käytetään yleensä Boolen lausekkeissa. &&:n tulos on aina 0 tai 1.
Ero & ja && välillä
Keskeinen ero &&- ja &-operaattoreiden välillä on, että && tukee oikosulkuarviointia, kun taas &-operaattori ei.
Toinen ero on, että && arvioi lausekkeen exp1 ja palauttaa välittömästi väärän arvon, jos exp1 on epätosi. Vaikka &-operaattori arvioi aina molemmat lausekkeet (exp1 ja exp2) ennen vastauksen poistamista.
S.N. | Perusta | & Operaattori | && Operaattori |
---|---|---|---|
1 | Operaattori | Se on bittikohtainen AND-operaattori. | Se on looginen JA-operaattori. |
2 | Arviointi | Se arvioi sekä annetun lausekkeen vasemman että oikean puolen. | Se arvioi vain annetun lausekkeen vasemmat puolet. |
3 | Toimii päällä | Se toimii Boolen tietotyypeillä sekä biteillä. | Se toimii vain Boolen tietotyypeillä. |
4 | Käyttää | Käytetään loogisen tilan tarkistamiseen ja myös tiettyjen bittien, kuten pariteettibittien, peittämiseen. | Käytetään vain loogisten ehtojen tarkistamiseen. |
5 | Esimerkki | z = x & y | jos (y > 1 && y > x) |
Ymmärretään bittikohtaista ja loogista ja operaattoria Java-ohjelman kautta.
LooginenAndExample.java
merkkijonon alimerkkijono
public class LogicalAndExample { public static void main(String args[]) { int a=10, b=20; if (a == 10 && b == 20) System.out.println('true'); else System.out.println('false'); int c=78, d=90; if (a > c && b <d) system.out.println('true'); else system.out.println('false'); } < pre> <p> <strong>Output:</strong> </p> <pre> true false </pre> <p> <strong>BitwiseAndExample.java</strong> </p> <pre> public class BitwiseAndExample { public static void main(String args[]) { int a = 3; int b = 9; //bitwise AND System.out.println('a&b = ' + (a & b)); } } </pre> <p> <strong>Output:</strong> </p> <pre> a&b=1 </pre> <p>Let's create another Java program and use Logical and Bitwise AND operators simultaneously.</p> <p> <strong>JavaOperators.java</strong> </p> <pre> public class JavaOperators { public static void main(String args[]) { int a = 58; //58 in binary is 111010 int b = 13; //13 in binary is 1101 System.out.println(a&b); //returns 8 = 1000 int x = 10; System.out.println(x<30 && x<60); returns false } < pre> <p> <strong>Output:</strong> </p> <pre> 8 true </pre> <hr></30></pre></d)>
BitwiseAndExample.java
public class BitwiseAndExample { public static void main(String args[]) { int a = 3; int b = 9; //bitwise AND System.out.println('a&b = ' + (a & b)); } }
Lähtö:
a&b=1
Tehdään toinen Java-ohjelma ja käytetään Logical- ja Bitwise AND-operaattoreita samanaikaisesti.
JavaOperators.java
public class JavaOperators { public static void main(String args[]) { int a = 58; //58 in binary is 111010 int b = 13; //13 in binary is 1101 System.out.println(a&b); //returns 8 = 1000 int x = 10; System.out.println(x<30 && x<60); returns false } < pre> <p> <strong>Output:</strong> </p> <pre> 8 true </pre> <hr></30>
30>