关于自增:a与a与aa之间的区别

54次阅读

共计 1196 个字符,预计需要花费 3 分钟才能阅读完成。

a++++a 都是在做自增运算,都是在 a 原有根底上 +1;
然而如果 a ++ 和 ++ a 再被应用的状况下,是有不同的状况呈现。

a++ 被应用时:先应用,再赋值
++a 被应用时:先赋值,再应用

1、未被应用时:a++,++b

int a = 5,b = 5;
a++;
++b;
System.out.println(a);//6
System.out.println(b);//6

2、被应用时:a++,++b

int a = 5,b = 5;
System.out.println(a++);//5
System.out.println(++b);//6
System.out.println(a);//6
System.out.println(b);//6

3、上面咱们再简单一些:

int a = 5,b = 5;
System.out.println(a++ + a);//11
System.out.println(++b + b);//12

4、上面咱们再加深下难度:

int a = 5,b = 5;
System.out.println(a++ + a++);//11
System.out.println(++b + ++b);//13

5、上面咱们再来变换下:

int a = 5,b = 5;
System.out.println(a++ + ++a);//12
System.out.println(++b + b++);//12

上述题你们是否做对了,我不可知?然而做没做对请咱们都持续往下看,上面会有针对性的分析这个问题,当然也会引出咱们一个新的问题 a=a++

6、b=a++

int a = 5,b;
b = a++;
System.out.println(b);
System.out.println(a);

咱们能够这么了解这个过程:
1、咱们取出 a 的值,放在一个长期变量里 — int temp = a;
2、将 a 的值 +1,a = a + 1;
3、将长期变量的值赋值给 b — int b = temp;
4、所以 a = 6,b = 5

7、b=++a

int a = 5,b;
b = ++a;
System.out.println(b);
System.out.println(a);

咱们能够这么了解这个过程:
1、将 a 的值 +1,a = a + 1;
2、将 a 的值赋值给 b — int b = a;
3、所以 a = 6,b = 6

7、a=a++

int a = 5;
a = a++;
System.out.println(a);

咱们能够这么了解这个过程:
1、咱们取出 a 的值,放在一个长期变量里 — int temp = a;(此时 a = 5,所以 temp 这个长期变量的值为 5)
2、将 a 的值 +1,a = a + 1;(此时 a = 6)
3、将长期变量的值赋值给 a — int a = temp;(因为长期变量 temp 的值为 5,此时 a = 5)
4、所以 a = 5

8、a=++a

int a = 5;
a = ++a;
System.out.println(a);

咱们能够这么了解这个过程:
1、将 a 的值 +1,a = a + 1;
2、将 a 自增之后的值赋值给 a — int a = a;
3、所以 a = 6

正文完
 0