📜  Java中的 & 运算符与示例

📅  最后修改于: 2022-05-13 01:54:22.777000             🧑  作者: Mango

Java中的 & 运算符与示例

Java中的&运算符有两个明确的功能:

  1. 作为关系运算符: & 用作关系运算符来检查条件语句,就像& &运算符一样。两者甚至给出相同的结果,即如果所有条件都为真,则为真,如果任何一个条件为假,则为假。

    但是,它们之间存在细微差别,这突出了&运算符的功能:

    • & &运算符:它只评估下一个条件,如果它之前的条件为真。如果任何条件为假,它就不会进一步评估该语句。
    • &运算符:它评估所有条件,即使它们为假。因此,由于条件而导致的数据值的任何变化都只会在这种情况下反映出来。

    例子:

    // Java program to demonstrate
    // & operator as relational operator
      
    import java.io.*;
      
    class GFG {
        public static void main(String[] args)
        {
      
            int x = 5, y = 7, z = 9;
      
            System.out.println("Demonstrating && operator");
            if ((x > y) && (x++ > z))
                ;
            else
                System.out.println("Value of x: " + x);
      
            System.out.println("\nDemonstrating & operator");
            if ((x > y) & (x++ > z))
                ;
            else
                System.out.println("Value of x: " + x);
        }
    }
    
    输出:
    Demonstrating && operator
    Value of x: 5
    
    Demonstrating & operator
    Value of x: 6
    
  2. 作为按位与: &运算符用于在Java中添加按位数字。位数是以整数形式存储的二进制数。有人会问,这些 Bitwise 数字到底有什么用?为什么不以十进制形式存储每个数字并使用我们的传统运算符执行正常操作:+、-、/、%、*。这是因为我们所有的数据编码和解码都是以比特为单位完成的,因为它们允许将大量信息打包到一个很小的空间中。

    例子:

    // Java program to demonstrate
    // & operator as bitwise operator
      
    import java.io.*;
      
    class GFG {
        public static void main(String[] args)
        {
      
            int a = 12;
            int b = 25;
      
            System.out.println("Demonstrating & operator\n");
            int c = a & b;
            System.out.println(a + " & " + b + " = " + c);
        }
    }
    
    输出:
    Demonstrating & operator
    
    12 & 25 = 8