V této části probereme dva nejdůležitější operátory & a && v Jáva a také vidět klíčové rozdíly mezi log a bitové operátory spolu s jeho využitím.
& operátor
Jediný operátor AND ( & ) je známý jako Bitové AND operátor. Funguje na jediném bitu. Chce to dva operandy. Bit ve výsledku je 1 právě tehdy, když oba odpovídající bity v operandech jsou 1. Výsledkem operátoru může být libovolné číslo. Například:
a = 01100010
b = 10111010
a&b = 00100010
&& Operátor
Operátory dvojitého AND (&&) jsou známé jako logické AND operátory. Obvykle se používá v cyklech a podmíněných příkazech. Obvykle se používá v booleovských výrazech. Výsledek && je vždy 0 nebo 1.
Rozdíl mezi & a &&
Klíčový rozdíl mezi operátory && a & je v tom, že && podporuje vyhodnocení zkratu, zatímco operátor & nikoli.
Dalším rozdílem je, že && vyhodnotí výraz exp1 a okamžitě vrátí hodnotu false, pokud je exp1 nepravda. Operátor while & vždy vyhodnotí oba výrazy (exp1 a exp2), než odešle odpověď.
S.N. | Základ | & operátor | && Operátor |
---|---|---|---|
1 | Operátor | Je to bitový operátor AND. | Je to logický operátor AND. |
2 | Hodnocení | Vyhodnocuje levou i pravou stranu daného výrazu. | Vyhodnocuje pouze levé strany daného výrazu. |
3 | Funguje na | Funguje na booleovských datových typech i na bitech. | Funguje pouze na datovém typu Boolean. |
4 | Použití | Používá se ke kontrole logické podmínky a také se používá k maskování určitých bitů, jako jsou bity parity. | Používá se pouze pro kontrolu logických podmínek. |
5 | Příklad | z = x & y | if (y > 1 && y > x) |
Pojďme pochopit bitové a logické a operátor prostřednictvím programu Java.
LogicalAndExample.java
alternativa mylivecricket
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)); } }
Výstup:
a&b=1
Vytvořme další Java program a použijeme současně logické a bitové operátory 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>