Java等于加运算符

时间:2015-02-24 10:04:49

标签: java operators equals-operator

我需要解释这个奇怪的运算符 = + (等于加号)

示例#1:

Double a = new Double(5);
Double b = new Double(10);
a += b

结果:

a=15.0
b=10.0

示例#2:

Double a = new Double(5);
Double b = new Double(10);
a =+ b

结果:

a=10.0
b=10.0

我理解第一个例子,但请解释一下 = + 运算符在示例2中的作用。

另一个有趣的事实是,这些运算符是有效且可编译的: + =, - =,* =,/ =
但这两个中的任何一个都不会编译: = *,= /

1 个答案:

答案 0 :(得分:4)

=+是赋值操作,之后是+。它完全有效,会发生什么:

a = (+b); 

当您想要将变量的负值分配给另一个变量时,它几乎相同:

a = (-b); //a will be assigned with -10

此外,=*无法编译,因为没有*一元运算符。