我刚刚意识到我正在使用= +而不是运算符+ =而我的程序正在做各种奇怪和意想不到的事情。 Eclipse没有给我任何类型的错误,所以我认为= +是一个合法的运算符,但在我的书中没有提到它。
我的问题是= +做什么,如果有什么,在什么情况下你会使用它?
答案 0 :(得分:7)
+=
添加AND赋值运算符,它将右操作数添加到左操作数并将结果赋给左操作数。
示例:
int i =1;
int j=2;
i += j;
System.out.println(i); //prints 3
=+ same as =
让我们举个例子
int i =1;
int j=2;
i =+ j;
System.out.println(i); //prints 2 only
答案 1 :(得分:6)
=+
与赋值运算符=
a =+ b;
相当于
a = (+b);
与
相同a = b;
答案 2 :(得分:1)
要强调的重要事实是Java中没有=+
赋值运算符。
您只是一个接一个地列出两个运营商(=
然后+
i =+ j;
就像写i = +j;
一样。 虽然看起来有点时髦,但在考虑减号时,每个人都很清楚。
i =- j;
与i = -j;
正如许多其他答案中所述,添加和分配运算符+=
答案 3 :(得分:1)
实际上说 i=j
与 i= +j
相同并不完全正确,
因为 i= +j
将变量类型提升为 int,如果它小于 int,而赋值则不会。
例如:
byte b1 = 2;
short s1 = b; // compiles and s1 equals 2 of type short
short s2 = +b; // Compile error: required type: short, provided int
// Because the result of +b equals 2 of type int
答案 4 :(得分:0)
+=
将右操作数添加到左操作数并将其分配给左操作数
=+
为左操作数
答案 5 :(得分:0)
除了与=
相同之外,没有= +的影响