In questa sezione discuteremo i due operatori più importanti & E && In Giava e vedere anche il differenze chiave tra logico E operatori bit a bit insieme ai suoi usi.
& Operatore
Il singolo operatore AND ( & ) è noto come AND bit per bit operatore. Funziona su un singolo bit. Occorrono due operandi. Un bit nel risultato è 1 se e solo se entrambi i bit corrispondenti negli operandi sono 1. Il risultato dell'operatore può essere qualsiasi numero. Per esempio:
a = 01100010
b = 10111010
a&b = 00100010
&& Operatore
Gli operatori doppi AND (&&) sono noti come E logico operatori. Di solito viene utilizzato nei cicli e nelle istruzioni condizionali. Di solito viene utilizzato nelle espressioni booleane. Il risultato di && è sempre 0 o 1.
Differenza tra & e &&
La differenza fondamentale tra gli operatori && e & è che && supporta le valutazioni di cortocircuito mentre l'operatore & no.
Un'altra differenza è che && valuterà l'espressione exp1 e restituirà immediatamente un valore falso se exp1 è falso. Mentre l'operatore & valuta sempre entrambe le espressioni (exp1 ed exp2) prima di ritirare una risposta.
S.N. | Base | & Operatore | && Operatore |
---|---|---|---|
1 | Operatore | È un operatore AND bit a bit. | È un operatore logico AND. |
2 | Valutazione | Valuta sia il lato sinistro che quello destro dell'espressione data. | Valuta solo i lati sinistri dell'espressione data. |
3 | Funziona | Funziona sia su tipi di dati booleani che su bit. | Funziona solo su tipo di dati booleano. |
4 | Usi | Utilizzato per verificare la condizione logica e anche per mascherare alcuni bit come i bit di parità. | Utilizzato solo per verificare le condizioni logiche. |
5 | Esempio | z = x e y | se (y > 1 && y > x) |
Comprendiamo bit per bit, logica e operatore attraverso un programma Java.
LogicalAndExample.java
Shreya Ghoshal
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)); } }
Produzione:
a&b=1
Creiamo un altro programma Java e utilizziamo contemporaneamente gli operatori logici e bit a bit AND.
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>