This question already has answers here:
What is the difference between a += b and a =+ b , also a++ and ++a?
(9个答案)
5年前关闭。
我需要解释这个奇怪的运算符 = + (等于加号)
范例1:
结果:
范例2:
结果:
我理解第一个示例,但是请向我解释这个 = + 运算符在示例2中的操作。
另外一个有趣的事实是,这些运算符是有效且可编译的:
+ =,-=,* =,/ =
但是这两个都不会编译:
= *,= /
要将变量的负值分配给另一个变量,几乎是一样的:
另外,由于没有
(9个答案)
5年前关闭。
我需要解释这个奇怪的运算符 = + (等于加号)
范例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中的操作。
另外一个有趣的事实是,这些运算符是有效且可编译的:
+ =,-=,* =,/ =
但是这两个都不会编译:
= *,= /
最佳答案
=+
是赋值操作,之后是一元+
。这是完全有效的,发生的是:
a = (+b);
要将变量的负值分配给另一个变量,几乎是一样的:
a = (-b); //a will be assigned with -10
另外,由于没有
=*
一元运算符,因此*
无法编译。