黑马程序员技术交流社区
标题:
a++ 输出结果加解释
[打印本页]
作者:
笑笑精灵
时间:
2015-9-8 21:31
标题:
a++ 输出结果加解释
class Demo{
public static void main(String[] args) {
int a = 2;
int b = 2;
a = a++;
b = a++;
System.out.println(a);//3
System.out.println(b);//2
}
}
作者:
黑马小辛
时间:
2015-9-8 21:55
a = a++;
第一步:(a++)的值为2;第二步:a的值自加1,为3;第三步:将(a++)的值赋给a,此时a的值为2
b = b++;
第一步:(a++)的值为2;第二步:a的值自加1,为3;第三步:将(a++)的值赋给b,此时b的值为2,a的值为3
作者:
stray_cat
时间:
2015-9-8 22:06
1.先运算a++表达式的值,因为++在后面所有,当前a的值(1)作为a++表达式的值(1)
2.计算++,即a自增,a变为3
3.再赋值,将步骤1中的表达式的值(1)赋值给a,此时a又变成了2
4.相当于在内从中a的值由2变为3,再由3变为2
b也是同理
作者:
方育伟
时间:
2015-9-8 22:13
a应该是2,b也是
作者:
张寰宇
时间:
2015-9-8 22:18
谢谢分享学习了
作者:
王乙帆
时间:
2015-9-8 22:28
666666666666
作者:
c4anger
时间:
2015-9-8 22:34
感觉还是比较绕。
作者:
Andy丶JF
时间:
2015-9-8 22:44
楼上解释得很清楚,慢慢学着就知道其实这个是有多简单了
作者:
果蝇
时间:
2015-9-8 22:46
基础的东西,用多了自然就没什么了
作者:
木木三
时间:
2015-9-8 22:49
画图理解好一点吧。
作者:
笑笑精灵
时间:
2015-9-10 19:49
黑马小辛 发表于 2015-9-8 21:55
a = a++;
第一步:(a++)的值为2;第二步:a的值自加1,为3;第三步:将(a++)的值赋给a,此时a的值为2
b ...
谢谢,分析的透彻,条理
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2