logo

Javaの&と&&の違い

このセクションでは、2 つの最も重要な演算子について説明します。 & そして &&ジャワ また、 論理的なものとの主な違い そして ビット演算子 その用途とともに。

Javaの&と&&の違い

& 演算子

単一の AND 演算子 ( & )として知られています ビットごとの AND オペレーター。単一ビットで動作します。 2 つのオペランドを必要とします。オペランドの対応するビットが両方とも 1 である場合にのみ、結果のビットは 1 になります。演算子の結果は任意の数値になります。例えば:

a = 01100010

b = 10111010

a&b = 00100010

&& 演算子

二重 AND 演算子 (&&) は次のように呼ばれます。 論理積 オペレーター。通常、ループや条件文で使用されます。通常、ブール式で使用されます。 && の結果は常に 0 または 1 です。

&と&&の違い

&& と & 演算子の主な違いは、&& は短絡評価をサポートしますが、& 演算子はサポートしないことです。

もう 1 つの違いは、&& は式 exp1 を評価し、exp1 が false の場合は直ちに false 値を返すことです。一方、& 演算子は、応答をリタイアする前に常に両方の式 (exp1 と exp2) を評価します。

S.N. 基礎 & 演算子 && 演算子
1 オペレーター これはビット単位の AND 演算子です。 論理積演算子です。
2 評価 指定された式の左側と右側の両方を評価します。 指定された式の左側のみを評価します。
3 で動作します これはビットだけでなくブール データ型でも動作します。 これはブール データ型でのみ動作します。
4 用途 論理状態をチェックするために使用され、パリティ ビットなどの特定のビットをマスクするためにも使用されます。 論理条件をチェックするためにのみ使用されます。
5 z = x & y if (y > 1 && y > x)

Javaプログラムを通してビット単位の論理and演算子を理解しましょう。

LogicalAndExample.java

文字列をjsonオブジェクトに変換
 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)); } } 

出力:

 a&amp;b=1 

別の Java プログラムを作成し、論理 AND 演算子とビットごとの 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&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>