+ =和= +之间有什么区别? 具体来说,在java中,但一般也是。
答案 0 :(得分:30)
i += 4;
装置
i = i + 4; // increase i by 4.
虽然
i =+ 4;
相当于
i = +4; // assign 4 to i. the unary plus is effectively no-op.
(有关一元+的内容,请参阅http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.15.3。)
答案 1 :(得分:10)
+=
是一个运算符,它通过右侧的值递增赋值的左侧,并将其分配回左侧的变量。 =+
不是运算符,但实际上是两个运算符:赋值运算符=
和一元加+
(正)运算符,表示右侧的值为正。它实际上是多余的,因为值是正的,除非它们被一元减去否定。你应该避免=+
构造,因为它比任何实际的好处更容易引起混淆。
答案 2 :(得分:7)
+=
得到并增加:
a += 5; // adds 5 to the value of a
=+
本身并不是真正有效的标识符,但在您使用一元+
运算符时可能会显示:
a =+ 5; // assigns positive five to a
答案 3 :(得分:5)
= +不是运营商。 +是赋值运算符后面的数字的一部分。
int a = 4; int b = 4;
a + = 1; b = + 1;
System.out.println(“a =”+ a +“,b =”+ b);
这表明正确格式化代码以显示意图的重要性。
答案 4 :(得分:3)
具体来说,在java中,但一般也是。
在Java中x += <expr>;
等同于x = x + ( <expr> );
,其中+
运算符可以是算术加法运算符或字符串连接运算符,具体取决于x
的类型。另一方面,x =+ <expr>;
实际上是编写x = + <expr>;
的一种丑陋方式,其中+
是一元加运算符...即数值类型的无操作和否则编译错误。
在一般情况下,问题无法解决。有些语言支持“+ =”运算符,而其他语言则不支持。同样,某些语言可能支持“= +”运算符,而其他语言则不支持。并且一些语言可能允许应用程序“重载”一个或另一个运算符。询问操作员“一般”是什么意思毫无意义。
答案 5 :(得分:3)
+=
是一种在java中增加数字或String
的方法。 E.g。
int i = 17;
i += 10; // i becomes 27 now.
没有=+
运算符。但是,如果您执行i =+ 10;
,则表示i
等于+10
,等于10
。
答案 6 :(得分:2)
我不知道“一般”是什么意思,但在早期版本的C语言(大多数Java语法来自C ++)中,=+
是原始语法后来变为+=
,即i =+ 4
等同于i = i + 4
。
CRM(C参考手册)是使用=+
,=-
,=>>
等描述C语言的文档。
答案 7 :(得分:1)
当你有+ = b时,这意味着你要将b添加到已经存在的任何内容中。但是,如果您正在执行a = + b,则需要将+ b分配给a。
int a=2;
int b=5;
a+=b;
System.out.println(a); //Prints 7
a=2;
b=5;
a=+b;
System.out.println(a); //Prints 5
答案 8 :(得分:0)
您所说的+ =操作用于按R值中指定的特定值递增。
i = i+1;
//is equivalent to
i += 1;
然而,= +不是任何正确的运算,它基本上是2个不同的运算符,它们彼此相等且等于一元加运算符。=之后的+号实际上是没有意义的,因此尽量不要使用它,只会导致一个胡扯。
i =+ 1;
//is equivalent to
i = +(1);