use*_*458 3 java operators equals-operator
我需要解释这个奇怪的运算符=+(等于加)
示例#1:
Double a = new Double(5);
Double b = new Double(10);
a += b
Run Code Online (Sandbox Code Playgroud)
结果:
a=15.0
b=10.0
Run Code Online (Sandbox Code Playgroud)
示例#2:
Double a = new Double(5);
Double b = new Double(10);
a =+ b
Run Code Online (Sandbox Code Playgroud)
结果:
a=10.0
b=10.0
Run Code Online (Sandbox Code Playgroud)
我理解第一个例子,但请解释一下这个=+运算符在例子 2 中做了什么。
另一个有趣的事实是,这些运算符是有效且可编译的:+=、-=、*=、/=
但是这两个中的任何一个都不会编译:=*、=/
=+是赋值操作,+之后是一元。这是完全有效的,会发生什么:
a = (+b);
Run Code Online (Sandbox Code Playgroud)
当您想将一个变量的负值分配给另一个变量时,这几乎是相同的:
a = (-b); //a will be assigned with -10
Run Code Online (Sandbox Code Playgroud)
此外,=*不编译,因为没有*一元运算符。