我有以下代码:
public class Operators {
public static void main(String[] args) {
int i =+ 2;
System.out.println(i);
}
}
Run Code Online (Sandbox Code Playgroud)
执行后,我得到以下输出:2
那么=+运营商在这里做了什么呢?
编辑:
正如一些回答,这是分配+2到i,考虑下面的代码:
public class Operators {
public static void main(String[] args) {
int i =- -2;
System.out.println(i);
}
}
Run Code Online (Sandbox Code Playgroud)
所以在上面的例子中,输出应该是-2.但我得到了2
所以我想,它是-(-2),它给出了2.对吗?
int i =+ 2;
Run Code Online (Sandbox Code Playgroud)
它是对变量i的正2(+2)赋值.如果您的写作如下所示,它更具挖掘性或可理解性int i = +2;
还有一个例子 -
int i = 2;
i=+3;
System.out.println(i);
Run Code Online (Sandbox Code Playgroud)
它打印3.
+一元加运算符; 表示正值(但是没有这个数字是正数)
在说:
int i =+ 2;
Run Code Online (Sandbox Code Playgroud)
+充当一元运算符。
详细地说,它设置i为正值2。
编辑:您的更新说:
int i =- -2;
Run Code Online (Sandbox Code Playgroud)
产生 2. 为什么?
在这种情况下,它意味着i=-(-(2))。请注意,当值为 时,使用一元减运算符可能会产生意外结果,例如Integer.MIN_VALUE。
| 归档时间: |
|
| 查看次数: |
9560 次 |
| 最近记录: |