A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 Aaron_wang 于 2015-11-26 21:22 编辑

好吧,激动了,之前写错了,现在更正:
public class H {
       
        public static void main(String[] args) {
                int count = 0;
                int a = 0;
                count += count++;
                a = count + count++;
                System.out.println(count);
                System.out.println(a);
        }

}


能说出结果么
在int count = count + count++;中count的值是怎么变化的呢?

27 个回复

倒序浏览
你代码有问题, 无发编译运行  .  你想要的结果应该是  1  2  俩次自增
回复 使用道具 举报
int count = 0;
int count += count++;这声明有问题吧
回复 使用道具 举报
0,,,如何Int a = 0;那个应该是1
回复 使用道具 举报 1 0
两次自增
回复 使用道具 举报
定义错误
回复 使用道具 举报
应该是不能编译的
回复 使用道具 举报
zqiang 中级黑马 2015-11-26 20:21:57
8#
额,楼主可能太激动了,代码有问题吧
回复 使用道具 举报
迷茫不堪的年纪 发表于 2015-11-25 23:35
你代码有问题, 无发编译运行  .  你想要的结果应该是  1  2  俩次自增

之前重复定义了,写错了额,再看看
回复 使用道具 举报
隔壁马良 发表于 2015-11-26 00:39
int count = 0;
int count += count++;这声明有问题吧

嗯嗯额,修正了~
回复 使用道具 举报

嗯,更正了
回复 使用道具 举报
zqiang 发表于 2015-11-26 20:21
额,楼主可能太激动了,代码有问题吧

激动了,,
回复 使用道具 举报
我怎么感觉输出结果都是2
回复 使用道具 举报
什么东东
回复 使用道具 举报
难道是2,2?
回复 使用道具 举报
Aaron_wang 发表于 2015-11-26 21:23
之前重复定义了,写错了额,再看看

没看到, 但是你的意思 应该是我之前说的那样
回复 使用道具 举报
应该是2,2,
回复 使用道具 举报
本帖最后由 Aaron_wang 于 2015-11-27 22:14 编辑
迷茫不堪的年纪 发表于 2015-11-27 00:47
没看到, 但是你的意思 应该是我之前说的那样

你太自信了,1,0
回复 使用道具 举报

答案是1,0
回复 使用道具 举报
count += count++;即count = count + count++;
count++,先计算后自增
第一步:count为0,0+0得到0(并未赋值给左边);
第二步:count自增,count = 1;
第三步:将第一步的0赋值给count,count = 0;
a = count + count++;
没了上面的的第三步,那么0赋值给a,a = 0,count不变,count = 1
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马