在编程时,经常会用到变量的自增或自减操作,尤其在循环中用的最多。以自增为例,有两种自增方式:前置和后置,即++i和i++,它们的不同点在于i++是在程序执行完毕后进行自增,而++i是在程序开始执行前就进行自增的。
案例如下:
/**
* @author 阿水
* @create 2023-04-23 11:33
*/
public class MyAddTest {
public static void main(String[] args) {
int i = 1;
System.out.println(i++ + i++);//1+2=3
System.out.println("i=" + i);//3
System.out.println(i++ + ++i);//3+5=8
System.out.println("i=" + i);//5
System.out.println(++i + ++i);//6+7=13
System.out.println("i=" + i);//7
System.out.println(++i + i++);//8+8=16
}
}
程序运行结果如下:
3
i=3
8
i=5
13
i=7
16
解析:表达式i++ + i++首先执行第一个i++,由于自增操作会稍后执行,因此,运算时i的值还是1,但自增操作后,i 的值变为了2,接着执行第二个i++,运算时,i的值已经为2了,而执行一个自增操作之后,i 的值变为了3,所以i++ + i++=1+2=3,而运算完成之后,i的值也就变为了3。以此类推......