Šajā sadaļā mēs apspriedīsim divus svarīgākos operatorus & un && iekšā Java un arī skatiet galvenās atšķirības starp loģisko un bitu operatori kopā ar tā lietojumiem.
& operators
Viens operators UN ( & ) ir pazīstams kā Bitu UN operators. Tas darbojas ar vienu bitu. Tam nepieciešami divi operandi. Rezultātā bits ir 1 tad un tikai tad, ja abi atbilstošie biti operandos ir 1. Operatora rezultāts var būt jebkurš skaitlis. Piemēram:
a = 01100010
b = 10111010
a&b = 00100010
&& Operators
Dubultie UN operatori (&&) ir zināmi kā loģiski UN operatoriem. To parasti izmanto cilpās un nosacījumos. To parasti izmanto Būla izteiksmēs. && rezultāts vienmēr ir 0 vai 1.
Atšķirība starp & un &&
Galvenā atšķirība starp && un & operatoriem ir tāda, ka && atbalsta īssavienojumu novērtēšanu, bet & operators to neatbalsta.
Vēl viena atšķirība ir tāda, ka && novērtēs izteiksmi exp1 un nekavējoties atgriezīs nepatiesu vērtību, ja exp1 ir nepatiesa. Operators & operators vienmēr novērtē abas izteiksmes (exp1 un exp2), pirms tiek atsaukta atbilde.
S.N. | Pamats | & operators | && Operators |
---|---|---|---|
1 | Operators | Tas ir bitu UN operators. | Tas ir loģisks UN operators. |
2 | Novērtēšana | Tas novērtē gan dotās izteiksmes kreiso, gan labo pusi. | Tas novērtē tikai dotās izteiksmes kreisās puses. |
3 | Darbojas uz | Tas darbojas ar Būla datu tipiem, kā arī uz bitiem. | Tas darbojas tikai Būla datu tipā. |
4 | Lietojumi | Izmanto, lai pārbaudītu loģisko stāvokli, kā arī lai maskētu noteiktus bitus, piemēram, paritātes bitus. | Izmanto tikai loģisko nosacījumu pārbaudei. |
5 | Piemērs | z = x un y | ja (y > 1 && y > x) |
Sapratīsim bitu un loģisko un operatoru, izmantojot Java programmu.
LogicalAndExample.java
salīdziniet java virkni
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)); } }
Izvade:
a&b=1
Izveidosim vēl vienu Java programmu un vienlaikus izmantosim operatorus Logical un Bitwise UN.
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>