关于java自加自减的问提

发布时间:2024-05-17 21:20 发布:上海旅游网

问题描述:

int i=3;
int count(i++)+(i++)+(i++);
System.out.println(i);
System.out.println(count);

现在自学java 关于自加自减不是很清楚 这个运算过程是什么得出的谢谢!

问题解答:

+号在前是先做运算,即先做加减之后在赋值也就是增值,+号在后是先赋值在运算,即先赋值在做加减,后增值

所以你的程序第一个count=(i++)+(i++)+(i++) 是+号在后,所以先赋值在进行+1,所以第一次i++的值为3,i的值为4,第二次i++的值为4,i的值为5,第三次i++的值为5,i的值为6,所以结果是6

这样一来,上面的要是明白的了,下面的就很好解释了,第一次i++为3第二次为4第三次为5所以count的结果为12

你的程序好像有问题
第二行应该是 int count=(i++)+(i++)+(i++);你掉了个=
运行结果是:
6
12
i为什么=6呢?因为i初始化为3,在第一个(i++)之后i就等于4了,在第二个(i++)之后i在4的基础上在加1就是5,第三个就是6了,结果i就是6
country就等于3+4+5就等于12了

i++代表计算后才+1,而++i表示计算前+1
所以int count = (i++) + (i++) + (i++);
可以看成count = 3 + 4 + 5;
为什么不是 4 + 5 + 6?因为是先计算,再+1;
所以最后输出i就等于6;
你可以试试int count = (++i) + (++i) + (++i);
结果:
6
15

热点新闻