i++ 和 ++i其实很简单, i++,是先用了此时i的值,用完后它的值就加1 ,下一次用它的时候值就是加1后的值。而 ++ i ,则是在用i这个值之前,先加1,再使用。一个是用了再变化,一个是变化后再用。i--和 --i 也是同理。
《Java编程思想》上的例子不错,很容易理解,我稍作修改总结在这里供大家参考。代码如下。
public class PresumAndPostsum {
public static void main(String[] args) {
int i = 1 ;
System.out.println("我是i我的值是===" +i); //最初我是1
System.out.println("我是++i我的值是===" + ++i); //我这个i是加了1之后成了2,才打印的。
System.out.println("我是i++我的值是===" + i++);//我这个i先用了自身的值2,打印完后,我的值加了1
System.out.println("我是i我的值是===" +i); //因为上一行执行完,i的值加了1了,所以现在再使用i,值是3
System.out.println("我是--i我的值是==="+ --i); //我这个i是先-1之后成为2,又打印的。
System.out.println("我是i--我的值是==="+ i--); //我这个i值为2,打印完成之后,自己-1
System.out.println("我是i我的值是===" +i); //因为上一行执行完,i的值-1了,所以现在再使用 i的值为1
}
}
打印结果如下 :
我是i我的值是===1
我是++i我的值是===2
我是i++我的值是===2
我是i我的值是===3
我是--i我的值是===2
我是i--我的值是===2
我是i我的值是===1