您的位置:首页 > 编程语言 > Java开发

关于java的自增操作符与中间缓存变量机制

2013-03-13 11:58 337 查看
public static void main(String[] args){

int i=0;

i = (i++)+(i++);

System.out.println(i);

}

上面结果输出的是1。在java里,执行i=(i++)+(i++);创建了2个临时的整型变量对象,对来存储每次自增运算的结果。

他们的执行过程如下:

temp1 = i; * tepm1==0

i = i + 1;

temp2 = i; * temp2==1

i = i + 1;

i = temp1 + temp2 ; * i== 1

问题的关键是:最后是各个临时变量相加而得出结果,而不是自增(自减)的变量(i)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: