use*_*597 2 java operator-keyword
你能清楚地解释运算符+ =和运算符= +之间的区别吗?显然,两者都是总和的捷径,但我没有得到"= +"的含义
a + = b等于a = a + b.但是a = + b的等价性是什么?
这是一个实际的例子:
public class SumOfSquares {
private int[] inputArray;
private Integer result;
public SumOfSquares(int[] inputArray) {
this.inputArray=inputArray;
result = new Integer(0);
}
public Integer getResult () {
for (int counter=0; counter<inputArray.length; counter++) {
int currentNumber = inputArray[counter];
result += currentNumber*currentNumber;
}
return result;
}
}
Run Code Online (Sandbox Code Playgroud)
inputArray={1,2,3,4,5}.预计result=55(1^2+2^2+3^2+4^2+5^2= 1+4+9+16+25= 55),如果我取代result += currentNumber*currentNumber;的result =+ currentNumber*currentNumber;,我得到的25,而不是55的结果,我想知道为什么.
=+不是运营商.您可能会将它与赋值=和一元运算+符的组合混淆,后者将该值视为正值(不会更改其符号,+ (-3)仍然是-3),并且可以完全省略整数值.
int a = 5;
int b = 3;
a = (+b); // a = 3
a = (-b); // a = -3
Run Code Online (Sandbox Code Playgroud)
+一元加运算符; 表示正值(但是没有这个数字是正数)
| 归档时间: |
|
| 查看次数: |
136 次 |
| 最近记录: |