V tem razdelku bomo razpravljali o dveh najpomembnejših operaterjih & in && v Java in si oglejte tudi ključne razlike med logičnimi in bitni operaterji skupaj z njegovimi uporabami.
& Operater
Enotni operator IN ( & ) je znan kot Bitno IN operater. Deluje na en sam bit. Potrebuje dva operanda. Bit v rezultatu je 1, če in samo če sta oba ustrezna bita v operandih 1. Rezultat operatorja je lahko poljubno število. Na primer:
a = 01100010
b = 10111010
a&b = 00100010
&& operater
Dvojni operatorji IN (&&) so znani kot logični IN operaterji. Običajno se uporablja v zankah in pogojnih stavkih. Običajno se uporablja v logičnih izrazih. Rezultat && je vedno 0 ali 1.
Razlika med & in &&
Ključna razlika med operaterjema && in & je v tem, da && podpira ocene kratkega stika, medtem ko operater & ne.
Druga razlika je v tem, da bo && ovrednotil izraz exp1 in takoj vrnil napačno vrednost, če je exp1 napačen. Operator while & vedno ovrednoti oba izraza (exp1 in exp2), preden umakne odgovor.
S.N. | Osnova | & Operater | && operater |
---|---|---|---|
1 | Operater | Je bitni operator IN. | Je logični operator IN. |
2 | Evalvacija | Ocenjuje tako levo kot desno stran danega izraza. | Vrednoti samo leve strani podanega izraza. |
3 | Deluje naprej | Deluje tako z logičnimi tipi podatkov kot tudi z biti. | Deluje samo z logičnim tipom podatkov. |
4 | Uporabe | Uporablja se za preverjanje logičnega stanja in tudi za maskiranje določenih bitov, kot so paritetni biti. | Uporablja se samo za preverjanje logičnih pogojev. |
5 | Primer | z = x & y | če (y > 1 && y > x) |
Razumejmo bitne in logične ter operatorje prek programa Java.
LogicalAndExample.java
pretvorba niza v int v javi
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)); } }
Izhod:
a&b=1
Ustvarimo še en program Java in hkrati uporabljajmo logične in bitne operatorje IN.
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>