public static void main(String[] args) {
int a = 1;
a++;//等价于:a = a + 1
System.out.println(a); // a = 2
a--;//等价于:a = a - 1
System.out.println(a); // a = 1
//如果想要a+2可不要写a+++,正确写法是a+=2 (这是赋值运算符)
//a++不光是一个表达式,本身还指代一个数据结果
//a++和++a这是自增的两种用法!
int b = 1;
int c = 1;
b++;
++c;
System.out.println(b);//
System.out.println(c);
练习
public static void main(String[] args) {
int a = 1;
System.out.println(a++);
System.out.println(a);
}
提问:每个a都是多少呢? 答案: 1 , 2
原因:对于这个输出语句来说,先运行了a这个代码,然后再对a进行自增,换而言之,在使用a时,a处于未自增状态,下一个a一定是自增之后的结果了
//a++表示先运行a,后执行自增
//++a表示先运行自增,后执行a
例题
public static void main(String[] args) {
int x = 1;
int y = (x++) + (++x) + (x--) - (--x);
System.out.println(++z);//输出结果是多少?
}
```
```
答案: 7
解析:int y = 1(x=2) + (x=3)3 + 3(x=2) - (x=1)1 = 1 + 3 + 3 - 1 = 6;
int z = y++;//int z = 6(y=7)