【发布时间】:2015-02-07 03:36:34
【问题描述】:
我最近开始在我的计算机科学课上学习 Java,并且遇到了一些有趣的事情。
基本上我的变量设置如下
int x = 5;
我创建了一个表达式x = (x--) - (--x)
当我打印变量 x 时,无论变量 x 是什么,它总是得到 2。
具体代码是:
import acm.program.*;
public class MathOperations extends ConsoleProgram {
private static final long serialVersionUID = 1L;
public void run(){
setFont("arial-bold-24");
int x = -5, y = -3;
double z = 2.2;
x = (x--) - (--x);
println ("x= " + x);
}
}
为什么结果总是2?
【问题讨论】:
-
你的问题是“为什么结果总是2?”?
-
是的,你是怎么得出这个结果的
-
在@rgettman 发布他的答案之后,只要说你不应该在前后递减的情况下做这样时髦的事情就足够了。
-
这可以通过打印
x--和--x然后减去它们来计算 -
是的,我终于明白了,谢谢大家的帮助
标签: java