赋值运算符

赋值运算符是以符号“=”表示,它是一个二元运算符(对两个操作数作处理),其功能是将右方操作数所含的值赋值给左方的操作数。其语法格式如下:

变量 = 表达式;

例如:

int a = 100;

该表达式是将100赋值给变量a。左方的操作数必须是一个变量,而右边的操作数则可以是任何表达式,包括变量(如anumber)、常量(123'book')、有效的表达式(如45*12)。例如:

 使用赋值运算符为变量赋值,实例代码如下:

int a = 10;                                        //声明int型变量a

int b = 5;                                         //声明int型变量b

int c = a+b;                                      //将变量ab进行运算后的结果赋值给c

遵循赋值运算符的运算规则,可知系统将先计算a+b的值,结果为15。然后将15赋值给变量c。因此“c=15”。

 

说明:由于赋值运算符“=”处理时会先取得右方表达式处理后的结果,因此一个表达式中若含有两个以上的“=”运算符时,会从最右方“=”开始处理。

 

  在项目中创建类Eval,在主方法中定义变量,使用赋值运算符为变量赋值。

public class Eval {                                                  //创建类

             public static void main(String[] args) {        //主方法

                   int a, b, c;                                           //声明int行变量a,b,c

                   a = 15;                                                //15赋值给变量a

                   c = b = a + 4;                                      //a4的和赋值给变量b,然后再赋值给变量c

                   System.out.println("c值为:" + c);        //将变量c的值输出

                   System.out.println("b值为:" + b);        //将变量b的值输出

             }

}

运行结果如图1所示。

        1  运行结果

说明:在Java里可以把赋值运算符连在一起使用。如

x = y = z = 5;

在这个语句中,变量xyz 都得到同样的值5,在程序开发中不建议使用这种赋值语法。

再例如,在下面的a=a+10表达式中,先计算表达式a+10,结果为19,然后执行表达式a=19

int a=9;

a=a+10;

System.out.println(a);

Java中,类似a=a+10这样的表达式还可写为以下形式:

a+=10;

其中,+=称为复合赋值运算符,类似的复值运算符还有-=*=/=%=&=|=^=等。对于这些运算符的具体应用如表1所示。

1  复合赋值运算符

运算符

示例

+

将运算符左边的变量加上右边表达式的值赋给左边的变量

a+=b  //相当于a=a+b

-=

将运算符左边的变量减去右边表达式的值赋给左边的变量

a-=b  //相当于a=a-b

*=

将运算符左边的变量乘以右边表达式的值赋给左边的变量

a*=b  //相当于a=a*b

/

将运算符左边的变量除以右边表达式的值赋给左边的变量

a/=b  //相当于a=a/b

%

将运算符左边的变量用右边表达式的值求模,并将结果赋给左边的变量

a%=b  //相当于a=a%b

&=

将运算符左边的变量与右边表达式的值进行逻辑与运算,并将结果赋给左边的变量

a&=b  //相当于a=a&b

|=

将运算符左边的变量与右边表达式的值进行逻辑或运算,并将结果赋给左边的变量

a|=b  //相当于a=a|b

^=

将运算符左边的变量与右边表达式的值进行异或运算,并将结果赋给左边的变量

a^=b  //相当于a=a^b

 

说明:赋值运算符的左边必须为变量,不能为任何表达式。