logo

Forskjellen mellom & og && i Java

I denne delen vil vi diskutere de to viktigste operatørene & og && i Java og se også viktige forskjeller mellom logiske og bitvise operatører sammen med dens bruk.

Forskjellen mellom & og && i Java

& Operatør

Den enkle OG-operatoren ( & ) er kjent som Bitvis OG operatør. Den opererer på en enkelt bit. Det krever to operander. En bit i resultatet er 1 hvis og bare hvis begge de tilsvarende bitene i operandene er 1. Resultatet av operatoren kan være et hvilket som helst tall. For eksempel:

a = 01100010

b = 10111010

a&b = 00100010

&& Operatør

De doble OG-operatorene (&&) er kjent som logisk OG operatører. Det brukes vanligvis i løkker og betingede utsagn. Det brukes vanligvis i boolske uttrykk. Resultatet av && er alltid 0 eller 1.

Forskjellen mellom & og &&

Hovedforskjellen mellom && og & operatører er at && støtter kortslutningsevalueringer mens & operatør ikke gjør det.

En annen forskjell er at && vil evaluere uttrykket exp1, og umiddelbart returnere en falsk verdi hvis exp1 er usann. Mens &-operatoren evaluerer alltid begge uttrykkene (exp1 og exp2) før et svar trekkes tilbake.

S.N. Basis & Operatør && Operatør
1 Operatør Det er en bitvis OG-operator. Det er en logisk OG-operator.
2 Evaluering Den evaluerer både venstre og høyre side av det gitte uttrykket. Den evaluerer bare venstresiden av det gitte uttrykket.
3 Virker på Den opererer på boolske datatyper så vel som på biter. Den fungerer bare på boolsk datatype.
4 Bruker Brukes til å sjekke logiske tilstander og brukes også til å maskere visse biter som paritetsbiter. Brukes kun for å sjekke de logiske forholdene.
5 Eksempel z = x & y if (y > 1 && y > x)

La oss forstå bitvis og logisk og operatør gjennom et Java-program.

LogicalAndExample.java

solfylt deol alder
 public class LogicalAndExample { public static void main(String args[]) { int a=10, b=20; if (a == 10 &amp;&amp; b == 20) System.out.println(&apos;true&apos;); else System.out.println(&apos;false&apos;); int c=78, d=90; if (a &gt; c &amp;&amp; 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(&apos;a&amp;b = &apos; + (a &amp; b)); } } </pre> <p> <strong>Output:</strong> </p> <pre> a&amp;b=1 </pre> <p>Let&apos;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&amp;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(&apos;a&amp;b = &apos; + (a &amp; b)); } } 

Produksjon:

 a&amp;b=1 

La oss lage et annet Java-program og bruke logiske og bitvise OG-operatorer samtidig.

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&amp;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>