Java 运算符

原文:https://www.studytonight.com/java/operators-in-java.php

运算符是告诉编译器执行某种操作的符号。Java 提供了一套丰富的操作符来处理各种类型的操作。有时我们需要执行算术运算,然后我们使用加号(+)运算符进行加法,乘法(*)进行乘法等。

运算符始终是任何编程语言必不可少的部分。

Java 操作符可以分为以下几类:

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 按位运算符
  • 赋值运算符
  • 条件运算符
  • 杂项操作员

算术运算符

算术运算符用于执行算术运算,如:加法、减法等,有助于解决数学表达式。下表包含算术运算符。

| 操作员 | 描述 | | + | 将两个操作数相加 | | - | 从第一个操作数中减去第二个操作数 | | * | 乘以两个操作数 | | / | 分子除以枚举数 | | % | 除法的余数 | | ++ | 增量运算符将整数值增加 1 | | -- | 递减运算符将整数值减少 1 |

示例:

让我们创建一个例子来理解算术运算符及其运算。

    class Arithmetic_operators1{
public static void main(String as[])
    {
        int a, b, c;
        a=10;
        b=2;
        c=a+b;
        System.out.println("Addtion: "+c);
        c=a-b;
        System.out.println("Substraction: "+c);
        c=a*b;
        System.out.println("Multiplication: "+c);
        c=a/b;
        System.out.println("Division: "+c);
        b=3;
        c=a%b;
        System.out.println("Remainder: "+c);
        a=++a;
        System.out.println("Increment Operator: "+a);
        a=--a;
        System.out.println("decrement Operator: "+a);       

    }
}

airthmatic operator Example


关系运算符

关系运算符用于测试操作数或值之间的比较。它可以用来测试两个值是否相等或不相等或小于或大于等。

下表显示了 Java 支持的所有关系运算符。

| 操作员 | 描述 | | == | 检查两个操作数是否相等 | | != | 检查两个操作数是否不相等。 | | > | 检查左边的操作数是否大于右边的操作数 | | < | 检查左边的操作数是否小于右边的操作数 | | >= | 检查左操作数是否大于或等于右操作数 | | <= | 检查左边的操作数是否小于或等于右边的操作数 |

示例:

在这个例子中,我们使用关系运算符来测试比较,如小于、大于等。

    class Relational_operators1{
public static void main(String as[])
    {
        int a, b;
        a=40;
        b=30;
        System.out.println("a == b = " + (a == b) );
        System.out.println("a != b = " + (a != b) );
        System.out.println("a > b = " + (a > b) );
        System.out.println("a < b = " + (a < b) );
        System.out.println("b >= a = " + (b >= a) );
        System.out.println("b <= a = " + (b <= a) );    
    }
}

relation operator example


逻辑运算符

逻辑运算符用于检查条件表达式。例如,我们可以在 if 语句中使用逻辑运算符来计算基于条件的表达式。我们也可以将它们用于循环来评估条件。

Java 支持以下 3 个逻辑运算符。假设我们有两个变量,它们的值是:a =真b =假

| 操作员 | 描述 | 例子 | | && | 逻辑“与” | (a && b)为假 | | &#124;&#124; | 逻辑或 | (a || b)是真的 | | ! | 逻辑非 | (!a)是假的 |

示例:

在这个例子中,我们使用逻辑运算符。这些运算符返回真值或假值。

    class Logical_operators1{
public static void main(String as[])
    {
        boolean a = true;
        boolean b = false;
        System.out.println("a && b = " + (a&&b));
        System.out.println("a || b = " + (a||b) );
System.out.println("!(a && b) = " + !(a && b));
    }
}

Logical Operator Example


按位运算符

按位运算符用于一点一点地执行操作。

Java 定义了几个按位运算符,可以应用于长整型、整型、短整型、字符型和字节型。

下表显示了 Java 支持的所有按位运算符。

| 操作员 | 描述 | | & | 按位“与” | | &#124; | 按位“或” | | ^ | 按位异或 | | << | 左移 | | >> | 右移 |

现在让我们来看看按位&|^的真值表

| a | b | a & b | a &#124; b | a ^ b | | Zero | Zero | Zero | Zero | Zero | | Zero | one | Zero | one | one | | one | Zero | Zero | one | one | | one | one | one | one | Zero |

按位移位运算符移位位值左操作数指定要移位的值,而右操作数指定值中的位要移位的位置数。两个操作数具有相同的优先级。

Example:

让我们创建一个演示按位运算符工作原理的示例。

a = 0001000
b = 2
a << b = 0100000
a >> b = 0000010
    class Bitwise_operators1{
public static void main(String as[])
    {
        int a = 50; 
        int b = 25; 
        int c = 0;

        c = a & b;        
        System.out.println("a & b = " + c );

        c = a | b;        
        System.out.println("a | b = " + c );

        c = a ^ b;        
        System.out.println("a ^ b = " + c );

        c = ~a;           
        System.out.println("~a = " + c );

        c = a << 2;      
        System.out.println("a << 2 = " + c );

        c = a >> 2;       
        System.out.println("a >>2  = " + c );

        c = a >>> 2;     
        System.out.println("a >>> 2 = " + c );
    }
}

bitwise operator example


赋值运算符

赋值运算符用于给变量赋值。它还可以与算术运算符结合使用来执行算术运算,然后将结果赋给变量。Java 支持赋值运算符如下:

| 操作员 | 描述 | 例子 | | = | 将右侧操作数的值赋给左侧操作数 | a = b | | += | 将右操作数与左操作数相加,并将结果分配给左操作数 | a+=ba=a+b | | -= | 从左操作数中减去右操作数,并将结果分配给左操作数 | a-=b=a-b相同 | | *= | 将左操作数与右操作数相乘,并将结果赋给左操作数 | a*=ba=a*b | | /= | 用右操作数除左操作数,并将结果分配给左操作数 | a/=ba=a/b | | %= | 使用两个操作数计算模数,并将结果分配给左操作数 | a%=ba=a%b |

示例:

让我们创建一个例子来理解赋值运算符的用法。所有赋值运算符都有从右到左的关联性。

    class Assignment_operators1{
public static void main(String as[])
{
    int a = 30;
    int b = 10;
    int c = 0;

      c = a + b;
System.out.println("c = a + b = " + c );

      c += a ;
System.out.println("c += a  = " + c );

      c -= a ;
System.out.println("c -= a = " + c );

      c *= a ;
System.out.println("c *= a = " + c );

      a = 20;
      c = 25;
      c /= a ;
System.out.println("c /= a = " + c );

      a = 20;
      c = 25;
      c %= a ;
System.out.println("c %= a  = " + c );

      c <<= 2 ;
System.out.println("c <<= 2 = " + c );

      c >>= 2 ;
System.out.println("c >>= 2 = " + c );

      c >>= 2 ;
System.out.println("c >>= 2 = " + c );

      c &= a ;
System.out.println("c &= a  = " + c );

      c ^= a ;
System.out.println("c ^= a   = " + c );

      c |= a ;
System.out.println("c |= a   = " + c );
    }
}

assignment operator example


杂项操作员

java 语言很少支持其他操作符。

条件运算符

它也被称为三进制运算符,因为它与三个操作数一起工作。它是 if-else 语句的简称。可用于评估布尔表达式,返回真或假的

epr1 ? expr2 : expr3

示例:

在三元运算符中,如果 epr1 为真,则表达式在问号(?) else 在冒号(:)后求值。见下面的例子。

    class Conditional_operators1{
public static void main(String as[])
{
int a, b;
      a = 20;
      b = (a == 1) ? 30: 40;
System.out.println( "Value of b is : " +  b );

      b = (a == 20) ? 30: 40;
System.out.println( "Value of b is : " + b );
}
}

conditonal operator example

instanceOf运算符

它是一个 java 关键字,用于测试给定的引用是否属于提供的类型。类型可以是类或接口。返回真或假

示例:

在这里,我们创建了一个存储“今晚学习”的字符串引用变量。因为它存储字符串值,所以我们使用 isinstance 运算符测试它,以检查它是否属于String类。见下面的例子。

    class instanceof_operators1{
public static void main(String as[])
{
      String a = "Studytonight";
boolean b = a instanceof String;
System.out.println( b );
}
}

instance of operator example