几乎全部有“++”写法的语言都一样,如果你会C的++是怎么用的,java也是这么用。
a = b++; // ++写在后面,说明前面那个东西前用了,也就是b先赋值给a了,然后b再+1
a = ++b; // ++写在前面,说明++先有效,即b要+1,然后赋值给a
最终效果上是a的值不同,而b的值都做了+1操作,只是先赋值还是先+1的问题。
对于我们常写的for (int i = 0; i < n; i++) {} 这个++写前写后都一样,实际上我们在这里需要的是先+1,再参与后续的操作,但写成++1就有些别扭,至少SUN的源文件中for循环中都是写i++的。
也就是说,++在前在后的影响,只在一条语句中有效,即一个分号“;”中有效。出了这个分号就不好用了。所以for循环的i++怎么写都行,因为这个分号不涉及其它操作,也就无所谓先后了。
来源:百度