为了账号安全,请及时绑定邮箱和手机立即绑定

count=count++,这个错在哪里??

public class HelloWorld {

    public static void main(String[] args) {

        

        // 变量保存成绩

        int score = 53; 

        

        // 变量保存加分次数

        int count = 0;



        //打印输出加分前成绩 

         System.out.println("加分前成绩"+score); 

       

        

        // 只要成绩小于60,就循环执行加分操作,并统计加分次数

        for(;score<60;score++)

        { count=count++;//错的地方就这里,但我不明白,为什么输出会是0,求解答!!!!!!!

            }  

        System.out.println("加分后成绩"+score);

        System.out.println("共加了"+count+"次");

        

        

        

        //打印输出加分后成绩,以及加分次数

      




    }

}


正在回答

1 回答

 count=count++; 你没有了解java中i++的执行原理,在java中执行i++或者++i都会赋值给临时变量的。这和C语言是不同。在C中,能得到你想要的结果7.但是在java中是不一样的。这样写相当于以下代码:temp =count;count=count++;count=temp;所以count一直为0;后缀加(i++),就会“先赋值(给临时变量)后自加1”。运算最终使用的,并不是变量本身,而是被赋了值的临时变量。

1 回复 有任何疑惑可以回复我~
#1

学编程的真菌 提问者

有点晕。。。好像明白了什么。。。。但还是谢谢了
2015-02-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165458    人
  • 解答问题       17585    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

count=count++,这个错在哪里??

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信